29.08.2015, 12:02
(
Последний раз редактировалось gmstrikker; 29.08.2015 в 19:35.
)
O que tem de errado na modificaзгo dos danos das armas no meu servidor? Nгo sei o porque, mas nгo estб funcionando direito...
Quando recebe o dano da uns BUGs loucos com colete, enche a vida, nгo faзo a menor ideia do pq...
Quando recebe o dano da uns BUGs loucos com colete, enche a vida, nгo faзo a menor ideia do pq...
Код:
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid, bodypart) { // modificando danos nas armas new Float:dmg; if(GetPlayerWeapon(playerid) == 30) { // ak if(aktype[playerid] == 1) { dmg = 15.0; } else if(aktype[playerid] == 2) { dmg = 16.0; } else if(aktype[playerid] == 3) { dmg = 17.0; } else if(aktype[playerid] == 4) { dmg = 18.0; } else if(aktype[playerid] == 5) { dmg = 20.0; } } // calculo de bonus ou diminuiзгo do dano dependendo de onde pegar switch(bodypart) { // warning 213: tag mismatch case 5: // BODY_PART_LEFT_ARM - braзo esquerdo { dmg = dmg * 0.5; } case 6: // BODY_PART_RIGHT_ARM - braзo direito { dmg = dmg * 0.5; } case 7: // BODY_PART_LEFT_LEG - perna esquerda { dmg = dmg * 0.5; } case 8: // BODY_PART_RIGHT_LEG - perna direita { dmg = dmg * 0.5; } case 4: // BODY_PART_GROIN - virilha { dmg = dmg * 1.0; } case 3: // BODY_PART_TORSO - peito { dmg = dmg * 1.2; } case 9: // BODY_PART_HEAD - cabeзa { dmg = dmg * 1.5; } } // onde tira a vida e o colete new Float:resto; new Float:a; GetPlayerArmour(damagedid, a); if(a > 0.0) { // se tiver colete SetPlayerArmourEx(damagedid, -dmg); resto = dmg - a; if(resto > 0.0) { SetPlayerHealthEx(damagedid, -resto); } } else { SetPlayerArmourEx(damagedid, -dmg); } return 1; }