PDA

Просмотр полной версии : [Мануал] Развлечение для сервера (огненный шар)



Ildars
25.01.2014, 17:57
Здравствуйте друзья!

Суть данного развлечения в том, что вам нужно убежать от "Огненного шара".

http://plasmon.rghost.ru/51914626/image.pnghttp://higgs.rghost.ru/51914680/image.pnghttp://plasmon.rghost.ru/51914631/image.pnghttp://higgs.rghost.ru/51914683/image.pnghttp://plasmon.rghost.ru/51914715/image.png

Ко всем new:

new fireball[MAX_PLAYERS] = {0, ...};

В OnPlayerDisconnect:

fireball[playerid] = 0;

В OnPlayerCommandText:

if(strcmp("/fireball", cmdtext, true) == 0)
{
if(fireball[playerid] == 0)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
fireball[playerid] = CreateObject(18693, x+10.0, y+10.0, z-1.0, 0.0, 0.0, 0.0);
return SendClientMessage(playerid, -1, "Беги! Огненный шар хочет поймать тебя!");
}
else
return DestroyFireball(playerid);
}

В OnGameModeInit:

SetTimer("FireballUpdate", 1000, true);

В конец мода:

DestroyFireball(playerid)
{
DestroyObject(fireball[playerid]);
fireball[playerid] = 0;
return 1;
}

forward FireballUpdate();
public FireballUpdate()
{
new Float:x, Float:y, Float:z;
new Float:health;
new i = GetMaxPlayers();
do{
if(fireball[--i])
{
GetPlayerPos(i, x, y, z);
MoveObject(fireball[i], x, y, z-1.0, 7.0);
GetObjectPos(fireball[i], x, y, z);
if(IsPlayerInRangeOfPoint(i, 1.0, x, y, z))
{
GetPlayerHealth(i, health);
health = health-20.0;
if(floatcmp(health, 0.0) <= 0)
{
DestroyFireball(i);
SetPlayerHealth(i, 0.0);
SendClientMessage(i, -1, "Огненный шар поймал тебя!");
}
else
SetPlayerHealth(i, health);
}
}
}while(i != 0);
}

L0ndl3m
25.01.2014, 18:07
Прикольно. :grin:

[ForD]
25.01.2014, 18:15
Ты лучше автора белым выдели а то так заметно его.
Сама работа вроде норм.

Salvacore
27.01.2014, 07:30
Креативно.

KakbeYura
26.04.2014, 17:30
Скриншоты не грузит, перезалей :smile:

Unreal
13.08.2015, 14:26
можно скрин перезалить?

#enotya
02.11.2016, 21:45
Скриншоты перезалейте.

hawertin
31.10.2022, 21:35
Что то я попробовал, ничего не вышло