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)
Копирование данной статьи без разрешения автора запрещено!
Создаёт лестницу впереди игрока, с количеством ступенек указанное в третьем параметре.
Параметры:
(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)
Копирование данной статьи без разрешения автора запрещено!