PDA

Просмотр полной версии : [Function] CreateStairFrontPlayer



L0ndl3m
13.06.2014, 19:07
CreateStairFrontPlayer
Создаёт лестницу впереди игрока, с количеством ступенек указанное в третьем параметре.

Параметры:

(playerid, stepheight, stepcount)

playerid - ID игрока, впереди которого создаётся лестница
stepheight - высота одной ступеньки
stepcount - количество ступенек


Возвращаемые значения:

1 - если удалось успешно создать всю лестницу.
0 - если не удалось создать всю лестницу (достигнут лимит объектов?).


Код:


CreateStairFrontPlayer(const playerid, const Float: stepheight, const stepcount)
{
new
Float: p_pos_x,
Float: p_pos_y,
Float: p_pos_z,
Float: p_pos_a,
i = stepcount;

GetPlayerPos(playerid, p_pos_x, p_pos_y, p_pos_z);
GetPlayerFacingAngle(playerid, p_pos_a);

p_pos_z -= 1.0;

do
{
p_pos_x += (0.6 * floatsin(-p_pos_a, degrees));
p_pos_y += (0.6 * floatcos(-p_pos_a, degrees));
p_pos_z += stepcount;

#if defined STREAMER_TYPE_OBJECT
CreateDynamicObject(1647, p_pos_x, p_pos_y, p_pos_z, 0.0, 0.0, p_pos_a - 90.0);
#else
if(CreateObject(1647, p_pos_x, p_pos_y, p_pos_z, 0.0, 0.0, p_pos_a - 90.0) == INVALID_OBJECT_ID)
return 0;
#endif
}
while(--i);

return 1;
}


Пример использования:




CMD:createstair(playerid, params[])
{
if(CreateStairFrontPlayer(playerid, 0.05, 1500) == 0)
return SendClientMessage(playerid, -1, "Не удалось полностью создать лестницу.");

return SendClientMessage(playerid, -1, "Вы успешно создали лестницу.");
}




Автор: L0ndl3m (https://pro-pawn.ru/member.php?2057-L0ndl3m)

Специально для: Pro-Pawn.Ru (http://pro-pawn.ru)

Копирование данной статьи без разрешения автора запрещено!

DeimoS
13.06.2014, 21:52
Ещё бы угол наклона прикрутил сюда и было бы шикарно

gangzone.ini
24.07.2016, 18:01
Такого видео не существует. © YouTube