5 saniye boyunca ölümsüz oluyorsunuz timer süresi dolduğunda ise oyuna başlamış oluyorsunuz.
public OnPlayerSpawn(playerid)
{
SetPlayerHealth(playerid, 10000000.0);
SendClientMessage(playerid, -1, "{AAFF00}<!> {FFFFFF}Spawn koruması başladı, 5 saniye boyunca ölümsüzsün.");
SetPlayerChatBubble(playerid, "{AAFF00}Spawn Korumasında", -1, 100.0, 10000);
SetTimerEx("SpawnKoruma", 5000, 0, "i", playerid);
return 1;
}
forward SpawnKoruma(playerid);
public SpawnKoruma(playerid)
{
SetPlayerHealth(playerid, 100.0);
SendClientMessage(playerid, -1, "{AAFF00}<!> {FFFFFF}Spawn koruması sona erdi.");
return 1;
}
Paylaşım için teşekkürler fakat bu bir anlatım değil. Sadece kodları paylaşmışın.
Alıntı yapılan: REFRACTIx - 10 Mayıs 2017, 17:06:48
Paylaşım için teşekkürler fakat bu bir anlatım değil. Sadece kodları paylaşmışın.
Ayrıca AK'yi neden defineledin ? Kullanmamışsın. Ve KZ yi tanıtmamışsın.
Mantıklı bir sistem, başarılı.
Teşekkürler.
Adamlar sunucuda fake-kill yaptığını düşünürsek çok feci lag sorunu ortaya çıkacaktır. Timeri düzgün kullanmanızı tavsiye ederim.
Bu tür sistemlerde timere ihtiyaç yok. örnek verecek olursak ;
new spawnkoruma[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
spawnkoruma[playerid] = 0;
return true;
}
public OnPlayerSpawn(playerid)
{
SetPlayerHealth(playerid,1000000);
spawnkoruma[playerid] = GetTickCount() + 5000;
SendClientMessage(playerid,-1,"5 saniyelik spawn koruman var.");
return true;
}
public OnPlayerUpdate(playerid)
{
if(spawnkoruma[playerid] > GetTickCount())
{
if(GetPlayerWeapon(playerid) != 0)
{
SetPlayerArmedWeapon(playerid, 0);
}
}
else if(spawnkoruma[playerid] < GetTickCount() && spawnkoruma[playerid] != 0)
{
SetPlayerHealth(playerid,100);
spawnkoruma[playerid] = 0;
SendClientMessage(playerid,-1,"Spawn koruman bitti");
}
return true;
}
Güzel bir sistem.
(http://www.game-state.com/94.23.208.199:9858/n-560x95_FFFFFF_FC7C05_000000_000000.png) (http://www.game-state.com/94.23.208.199:9858/)
Teşekkürler.
Teşekkürler.
Yararlı.