Code:
L 11/14/2012 - 01:59:11: [SM] Native "GetArrayArray" reported: Invalid Handle 62c20485 (error: 1)
L 11/14/2012 - 01:59:11: [SM] Displaying call stack trace for plugin "War3source/War3source_STOCK_Races/War3Source_023_RainbowDash.smx":
L 11/14/2012 - 01:59:11: [SM] [0] Line 222, distro_source\War3Source_023_RainbowDash.sp::OnW3TakeDmgBulletPre()
L 11/14/2012 - 01:59:11: [SM] Displaying call stack trace for plugin "War3source/War3source_STOCK_Races/War3Source_023_RainbowDash.smx":
L 11/14/2012 - 01:59:11: [SM] [0] Line 222, distro_source\War3Source_023_RainbowDash.sp::OnW3TakeDmgBulletPre()
The line in question is part of this bit of code:
Code:
new Handle:data;
new Float:chances[5];
new level=W3_GenericSkillLevel(victim,SKILL_GENERIC,data);
if(level){
GetArrayArray(data, 0, chances);
if(data!=INVALID_HANDLE&& level>0 &&!Hexed(victim,false) && W3Chance(chances[level]) && !W3HasImmunity(attacker,Immunity_Skills))
{
W3FlashScreen(victim,RGBA_COLOR_BLUE);
War3_DamageModPercent(0.0); //NO DAMAMGE
W3MsgEvaded(victim,attacker);
if(War3_GetGame()==Game_TF){
decl Float:pos[3];
GetClientEyePosition(victim, pos);
pos[2] += 4.0;
War3_TF_ParticleToClient(0, "miss_text", pos); //to the attacker at the enemy pos
}
}
}
new Float:chances[5];
new level=W3_GenericSkillLevel(victim,SKILL_GENERIC,data);
if(level){
GetArrayArray(data, 0, chances);
if(data!=INVALID_HANDLE&& level>0 &&!Hexed(victim,false) && W3Chance(chances[level]) && !W3HasImmunity(attacker,Immunity_Skills))
{
W3FlashScreen(victim,RGBA_COLOR_BLUE);
War3_DamageModPercent(0.0); //NO DAMAMGE
W3MsgEvaded(victim,attacker);
if(War3_GetGame()==Game_TF){
decl Float:pos[3];
GetClientEyePosition(victim, pos);
pos[2] += 4.0;
War3_TF_ParticleToClient(0, "miss_text", pos); //to the attacker at the enemy pos
}
}
}
I really don't understand what the GetArrayArray(data,0, chances); part of that does. Since the handle array has only just been created, surely it will be empty? Also - what does W3_GenericSkillLevel(victim,SKILL_GENERIC,data); do ?




Logged


DarkEnergy