• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Przekazywanie efektu naboju do przeciwnika

0 głosów
88 wizyt
pytanie zadane 26 listopada 2015 w C i C++ przez GameProgrammer Obywatel (1,150 p.)

Chcę wprowadzić różne efekty do nabojów typu podpalenie,trucizna itp.
Mam klasę weapon:

#pragma once

#include "Item.hpp"

class Weapon : public Item
{
public:
	Weapon(std::string data,TextureManager &textureManager);
	void update(sf::Time dt);
	void useItem(Statistic &statistic);

private:
	int speed;
	int damage,currentDamage;
	bool collision;
	float criticalAttack;

	sf::Vector2i bRect,bTileSize;

	sf::Clock game_clock;
	sf::Time shot_delay;
	sf::Time last_fire_timestamp;
};

ona tworzy obiekty pocisków podczas użycia:

	statistic.bullet.emplace_back(new NormalBullet(statistic.playerPosition,statistic.mousePosition, speed, currentDamage, collision,
													bRect, bTileSize,effectData,textureManager));

 

#pragma once

#include <SFML\Graphics.hpp>
#include "TextureManager.hpp"

#define _USE_MATH_DEFINES
#include <math.h>

class Bullet : public sf::Drawable
{
public:
	Bullet();

	virtual void update(sf::Time dt);
	void draw(sf::RenderTarget& target, sf::RenderStates states) const;

	void setIsActive(bool isActive);
	bool getIsActive();
	bool getCollision();

	sf::FloatRect getGlobalBounds();
	int getDamage();
protected:
	int setItems(std::string &item);

	sf::Sprite sprite;

	int damage;
	int speed;
	bool collision;
	sf::Vector2f direction;
	float angle;

	bool isActive;
};


I chcę właśnie stworzyć te różne efekty, podpalenie,trucizna itd.
Chcę stworzyć klasę główną Effects, i różne dziedziczące od niej, ale np. będzie taki rodzaj efektu że co kilka sekund będzie odbierać ileś tam  HP ogniem/trucizną, albo pocisk co stunuje gracza itd. Zatem konstruktor będzie przyjmował różne parametry.

Nie wiem czy zrobić jakąś strukturę z parametrami typu type,damage,chance itd. i potem te strukturę wypełniać w weapon, przekazywać do bullet, a za jej pomocą tworzyć efekt na przeciwniku. Macie jakieś pomysły?

1 odpowiedź

0 głosów
odpowiedź 26 listopada 2015 przez event15 Szeryf (94,280 p.)

Podobne pytania

0 głosów
1 odpowiedź 175 wizyt
0 głosów
3 odpowiedzi 160 wizyt
pytanie zadane 28 grudnia 2019 w C i C++ przez NieMaJuzNazw Użytkownik (890 p.)
0 głosów
0 odpowiedzi 55 wizyt
pytanie zadane 18 października 2020 w OpenGL, Unity przez Sic Dyskutant (8,470 p.)

89,693 zapytań

138,297 odpowiedzi

309,243 komentarzy

59,623 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...