Ho un mostro di classe e quando viene creata un'istanza deve collegare ogni mostro con l'arma. ex. Il mostro dei Gryphon dovrebbe avere attacco Grifone 1 e attacco Grifone 2, ovviamente il nome dell'attacco è TBD, ma per ora usare bene l'attacco 1 e 2. GrifoneCollegamento dati vettoriale
Currenly ho questo.
#include <vector>
typedef enum {Living, Dead, Nature} Race;
typedef enum {Gryphon, Oracle, Mercenary,Templar,
Satyr,Fallin Angel,ArcAngel,Satan,Grimreaper,
Unbaptized Babies,Boggart,Succubus,Meat Wagon,
Djinns,Manticore,Water Nymph,Plant Nymph,
Mother Nature, Cannibal Tribesmen,Wyvern,
Vegetable Lamb, Ent, Lava Worm, Alpha Dragon
} MonsterType;
typedef enum {gryphon1,Oracle1, Mercenary1,Templar1,
Satyr1,Fallin Angel1,ArcAngel1,Satan1,Grimreaper1,
Unbaptized Babies1,Boggart1,Succubus1,Meat Wagon1,
Djinns1,Manticore1,Water Nymph1,Plant Nymph1,
Mother Nature1, Cannibal Tribesmen1,Wyvern1,
Vegetable Lamb1, Ent1, Lava Worm1,Alpha Dragon1,
Gryphon2, Oracle2, Mercenary2,Templar2,
Satyr2,Fallin Angel2,ArcAngel2,Satan2,Grimreaper2,
Unbaptized Babies2,Boggart2,Succubus2,Meat Wagon2,
Djinns2,Manticore2,Water Nymph2,Plant Nymph2,
Mother Nature2, Cannibal Tribesmen2,Wyvern2,
Vegetable Lamb2, Ent2, Lava Worm2, Alpha Dragon2
} Weapon;
Class Monsters{
protected:
MonsterType type;
Race race;
std::vector<Weapon> weapon_list;
public:
bool flying;
bool lava;
bool water;
int life;
int karmaCost;
int move;
int crit;
int defMagic;
int defNonMagic;
bool isDead;
bool canMove;
bool canAttack;
bool onFlag;
int nextTurn;
};
io non sono sicuro circa il vettore, né se il suo bisogno era solo alcuni esperimenti avrei dovuto vedermela con .. Ma qual è il modo migliore per collegare l'arma al mostro? Si noti inoltre ogni arma ha valori che va con esso, in modo
gryphon attack 1 {
int range = 10
int ticks = 5
bool magical = false
int power = 23
bool heals = false
}
gryphon attack 2 {
int range = 5
int ticks = 7
bool magical = true
int power = 29
bool heals = true
}
i valori effettivi vengono letti da un ini o di rete, quindi non preoccupa ancora i valori reali, ma ho bisogno di sapere che posso aggiungere il valori gryphon->weapon1->range = 5
Sono ancora molto nuovo a questo quindi se qualcosa sembra molto sbagliato per favore dimmi.
Qual è la domanda? – Spook
Cercherò di rispondere "qual è il modo migliore per collegare l'arma al mostro?". Il tuo uso di 'std :: vector weapon_list' è abbastanza buono, riflette che i mostri possono avere più armi e che le relazioni" ha-a "dovrebbero essere codificate usando [composizione dell'oggetto] (http://en.wikipedia.org/wiki/Object_composition). Ti consiglio di creare un'altra classe per Arma, invece dell'enumerazione, quindi puoi associare i numeri a ciascuna arma. –
sì, quella era la domanda. sono stanco di alcuni modi diversi ma nessuno sembra funzionare, penso che sia più di non conoscere l'ignoto di nulla. –