Habe hier ein sehr merkwürdiges kleines Problem. Eigentlich gehts nur um einen if-block der zwei Bool vergleicht, aber obwohl ich im compiler sehen kann das beide true sind, wird der anschliessende block doch nicht ausgeführt.
Der block selbst sieht so aus:
Guard ist ein bool typ der im struct LC_Techniques enthalten ist, das folgendermassen aussieht:
Reposte ist ein bool der in der klasse, die die funktion enthält, selbst definiert ist. Wie gesagt, wenn ich den Code bei der If-zeile anhalte, zeigt mir das Output fenster das beide variabeln true sind, aber der Block wird nicht ausgeführt. Wenn ich MeleeSkills->SkillTrees[i].Techniques[j].Guard mit einem anderen in der funktion selbst definierten Bool ersetze wird der Block ausgeführt, am Code selbst kanns also als solches nicht liegen. Ist das schon mal jemandem passiert, hat jemand eine Ahnung was die Ursache sein könnte?
Habe noch einen Screenshot angehängt falls die Sache ein bisschen zu unglaubwürdig scheint.
Der block selbst sieht so aus:
Code:
if (Reposte == MeleeSkills->SkillTrees[i].Technique[j].Guard)
{
//do some stuff
}
Guard ist ein bool typ der im struct LC_Techniques enthalten ist, das folgendermassen aussieht:
Code:
struct LC_Technique
{
bool Guard;
int ID;
core::stringw Name;
core::stringw Description;
LC_CombatCondition YourCond;
LC_CombatCondition EnemyCond;
LC_CombatCondition YourResultCond;
LC_CombatCondition EnemyResultCond;
LC_Modifier SkillMod;
LC_Modifier AttackMod;
LC_Modifier DefMod;
int NumAdSkills;
int* AdSkills;
LC_Modifier MainSkills;
LC_Modifier OffSkills;
int AP;
};
Reposte ist ein bool der in der klasse, die die funktion enthält, selbst definiert ist. Wie gesagt, wenn ich den Code bei der If-zeile anhalte, zeigt mir das Output fenster das beide variabeln true sind, aber der Block wird nicht ausgeführt. Wenn ich MeleeSkills->SkillTrees[i].Techniques[j].Guard mit einem anderen in der funktion selbst definierten Bool ersetze wird der Block ausgeführt, am Code selbst kanns also als solches nicht liegen. Ist das schon mal jemandem passiert, hat jemand eine Ahnung was die Ursache sein könnte?
Habe noch einen Screenshot angehängt falls die Sache ein bisschen zu unglaubwürdig scheint.