21.05.2015, 17:21
Vк se ficou certo e bom?
Код:
new aktype[MAX_PLAYERS]; // variavel de fora que й umas melhorias que faz na arma public OnPlayerDamage(&playerid, &Float:amount, &issuerid, &weapon, &bodypart) { new dmg; if(GetPlayerWeapon(issuerid) == 30) { // arma /\ AK, configurar danos \/ if(aktype[issuerid] == 1) { dmg = 10; } else if(aktype[issuerid] == 2) { dmg = 11; } else if(aktype[issuerid] == 3) { dmg = 12; } else if(aktype[issuerid] == 4) { dmg = 14; } else if(aktype[issuerid] == 5) { dmg = 16; } else if(aktype[issuerid] == 6) { dmg = 20; } } // calculo de bonus ou diminuiзгo do dano dependendo de onde pegar dmg*0.5 = 5 BODY_PART_LEFT_ARM // braзo esquerdo dmg*0.5 = 6 BODY_PART_RIGHT_ARM // braзo direito dmg*0.5 = 7 BODY_PART_LEFT_LEG // perna esquerda dmg*0.5 = 8 BODY_PART_RIGHT_LEG // perna direita dmg*1.0 = 4 BODY_PART_GROIN // virilha dmg*1.2 = 8 BODY_PART_TORSO // peito dmg*1.5 = 9 BODY_PART_HEAD // cabeзa // onde tira a vida e o colete new Float:resto; new Float:a; GetPlayerArmour(playerid, a); if(a > 0.0) { // se tiver colete if(colete[playerid] < dmg) { SetPlayerArmour(playerid, -dmg); resto = dmg - recebeudano; if(resto > 0.0) { SetPlayerHealth(playerid, -resto); } } } else { SetPlayerArmour(playerid, -dmg); } }