04.05.2016, 09:44
hello, if I kill my enemy, the enemy's HP will go blink and on my screen, I can see the enemy dead but on enemy's POV, he's still alive. The enemy can shoot me, and kill me too. however, he will be invisible, and I can see his bullets going after me. the enemy can only be killed by killing himself (/kill doesnt work) by jumping off a cliff or damaging himself. I have added ClearAnimations(playerid); on OnPlayerDeath.
UPDATE: Enemy's POV
Код:
public OnPlayerDeath(playerid, killerid, reason) { new string[128]; SendDeathMessage(killerid, playerid, reason); ClearAnimations(playerid); if(killerid != INVALID_PLAYER_ID) { switch(random(2)) { case 0: format(string, sizeof(string), "You have eliminated %s (%d).", GetName(playerid), playerid); case 1: format(string, sizeof(string), "You have killed %s (%d).", GetName(playerid), playerid); case 2: format(string, sizeof(string), "%s (%d) has been finished off.", GetName(playerid), playerid); } SendClientMessage(killerid, -1, ""COL_GRAY"You have also received +$50 and +1 score."); GivePlayerMoney(killerid, 50); GivePlayerScore(killerid, 1); GameTextForPlayerEx(killerid, string, 2500); switch(random(2)) { case 0: format(string, sizeof(string), "You have been eliminated by %s (%d).", GetName(killerid), killerid); case 1: format(string, sizeof(string), "You have been killed by %s (%d).", GetName(killerid), killerid); case 2: format(string, sizeof(string), "You have been finished off by %s (%d).", GetName(killerid), killerid); } GameTextForPlayerEx(playerid, string, 2500); if(pInfo[playerid][Streak] >= 3) { switch(random(2)) { case 0: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" has broken "COL_SERVER"%s (%d)"COL_WHITE"'s killstreak of %d!", GetName(killerid), killerid, GetName(playerid), playerid, pInfo[playerid][Streak]); case 1: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" breaks the killstreak of "COL_SERVER"%s (%d)"COL_WHITE" of %d!", GetName(killerid),killerid,GetName(playerid),playerid, pInfo[playerid][Streak]); case 2: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" has crushed "COL_SERVER"%s (%d)"COL_WHITE"'s killstreak of %d!", GetName(killerid),killerid,GetName(playerid),playerid,pInfo[playerid][Streak]); } SendClientMessageToAll(-1, string); pInfo[playerid][Streak] = 0; } pInfo[killerid][Streak]++; if(pInfo[killerid][Streak] % 3 == 0) { switch(random(2)) { case 0: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" is on killing spree of %d killstreaks!",GetName(killerid),killerid,pInfo[killerid][Streak]); case 1: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" has created a killstreak of %d!", GetName(killerid), killerid, pInfo[killerid][Streak]); case 2: format(string, sizeof(string), ""COL_SERVER"%s (%d)"COL_WHITE" is now creating a rampage of %d killstreaks!", GetName(killerid), killerid, pInfo[killerid][Streak]); } GivePlayerMoney(killerid, 50 * pInfo[killerid][Streak]); GivePlayerScore(killerid, 1 * pInfo[killerid][Streak]); } } return 1; }