sFLY
Meow_1337
Дата: Суббота, 12.04.2014, 20:11:16 | Сообщение # 1
Сообщений: 207
Репутация: 11 [ +/- ]
Как сделать чтобы полет у террористов, работал только после того как таймер вышел. я про sProps. КОД: Код
#include <sourcemod> #include <sdktools> public Plugin:myinfo = { name = "sFly", author = "S1deX", description = "sFly for sProps mod", version = "1.0", url = "" }; public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon) { static bool:UseTriggered[MAXPLAYERS] = {false, ...}; if (GetClientTeam(client) < 2 || !IsPlayerAlive(client) || GetEntityMoveType(client) == MOVETYPE_LADDER) { UseTriggered[client] = false; if (GetEntityMoveType(client) == MOVETYPE_FLY) SetEntityMoveType(client, MOVETYPE_WALK); return Plugin_Continue; } else if (buttons & IN_USE) { new MoveType:mtype = GetEntityMoveType(client); if (GetEntPropEnt(client, Prop_Send, "m_hGroundEntity") == 0) SetEntityMoveType(client, MOVETYPE_WALK); else if (mtype == MOVETYPE_WALK || mtype == MOVETYPE_FLY) { if (!UseTriggered[client]) { UseTriggered[client] = true; SetEntityMoveType(client, MOVETYPE_FLY); } } } else if (UseTriggered[client]) { UseTriggered[client] = false; SetEntityMoveType(client, MOVETYPE_WALK); } return Plugin_Continue; }
BarD
Дата: Воскресенье, 13.04.2014, 06:02:09 | Сообщение # 2
Сообщений: 943
Репутация: 137 [ +/- ]
Создаешь таймер для теров: Код
if(GetClientTeam(client) == 2) //Если client Тер, то { CreateTimer(10.0, Timer, client); //Создаем таймер, например, на 10 сек } public Action:Timer(Handle:timer, any:client) // По истечению таймера { SetEntityMoveType(client, MOVETYPE_FLY); // Делаешь полет терам }
Сообщение отредактировал BarD - Воскресенье, 13.04.2014, 06:03:08
Meow_1337
Дата: Воскресенье, 13.04.2014, 15:12:48 | Сообщение # 3
Сообщений: 207
Репутация: 11 [ +/- ]
Не понятно, как вставить в данный код. Какой то он кривой.
Tokami
Дата: Воскресенье, 13.04.2014, 22:47:08 | Сообщение # 4
Сообщений: 238
Репутация: 19 [ +/- ]
Meow_1337, это прикол? Он дал тебе нормальный код который разобрать можно за 10 секунд.
Meow_1337
Дата: Воскресенье, 13.04.2014, 23:57:19 | Сообщение # 5
Сообщений: 207
Репутация: 11 [ +/- ]
Цитата Tokami (
)
это прикол? Он дал тебе нормальный код который разобрать можно за 10 секунд.
Дa :) Я уже написал, то что хотел. Спасибо за помощь.
Сообщение отредактировал Meow_1337 - Воскресенье, 13.04.2014, 23:57:32
alexejibragimov
Дата: Среда, 31.12.2014, 03:23:15 | Сообщение # 6
Сообщений: 2
Репутация: 0 [ +/- ]
Как сделать чтобы летать могли только CT ?
TEIN
Дата: Среда, 31.12.2014, 10:21:26 | Сообщение # 7
Сообщений: 563
Репутация: 78 [ +/- ]
BarD Нельзя передавать клиента в этом случае, необходимо использовать useid
serm
Дата: Среда, 31.12.2014, 10:28:22 | Сообщение # 8
Сообщений: 137
Репутация: 7 [ +/- ]
Цитата TEIN (
)
BarD Нельзя передавать клиента в этом случае, необходимо использовать useid
Ты что несешь ? Когда это стало нельзя ?
TEIN
Дата: Среда, 31.12.2014, 10:32:01 | Сообщение # 9
Сообщений: 563
Репутация: 78 [ +/- ]
serm Действительно ждешь объяснений? Может как-нибудь сам?
BarD
Дата: Среда, 31.12.2014, 10:51:15 | Сообщение # 10
Сообщений: 943
Репутация: 137 [ +/- ]
TEIN, в моём коде ошибок нет. Проверь сам. С Наступающим всех!
TEIN
Дата: Среда, 31.12.2014, 10:56:45 | Сообщение # 11
Сообщений: 563
Репутация: 78 [ +/- ]
BarD Нету? Если активировался таймер, клиент вышел и зашел сразу же новый, что произойдет? Только не говори про глобальный таймер, и что его можно убить при дисконнекте клиента. userid необходим также при использовании менюшек, как думаешь, почему тут передают userid ? http://world-source.ru/forum/100-2299-1
serm
Дата: Среда, 31.12.2014, 11:51:00 | Сообщение # 12
Сообщений: 137
Репутация: 7 [ +/- ]
Цитата TEIN (
)
Нету? Если активировался таймер, клиент вышел и зашел сразу же новый, что произойдет? Только не говори про глобальный таймер, и что его можно убить при дисконнекте клиента. userid необходим также при использовании менюшек, как думаешь, почему тут передают userid ?
Мде... Что за тупость ? А проверка IsClientInGame для кого ? Для Tokami ? И килять таймеры еще никто не запрещал....
TEIN
Дата: Среда, 31.12.2014, 13:08:46 | Сообщение # 13
Сообщений: 563
Репутация: 78 [ +/- ]
serm Ты такой смешной, ага? Игрок вышел, зашел (Id тот же самый), будешь продолжать спорить дальше?Добавлено (31.12.2014, 13:08:46) --------------------------------------------- Вот только не говори, что ты не уловил мысли, которую я пытаюсь тебе передать. Приступим. Никто и не говорил, что таймер убивать нельзя, это лишь твои выдумки. Если ты внимательно перечитаешь мое сообщение в посте 7, то обнаружишь: "Нельзя передавать клиента в этом случае , необходимо использовать useid". Что же это значит, а это значит, что в коде Bard'a не используется "убийство" таймера, понимаешь? И так, мы разобрались с этим. Осталось за малым: зачем userid вообще? Читай: http://world-source.ru/forum/100-2272-1 (говорят, полезно)
pro-health
Дата: Среда, 31.12.2014, 15:02:01 | Сообщение # 14
Сообщений: 188
Репутация: 5 [ +/- ]
ВСЕХ С НОВЫМ ГОДОМ !!!!!!!!!! ! _____________________________________________________________ А КОД BarD НОРМ.
Scarface_slv
Дата: Среда, 31.12.2014, 18:02:28 | Сообщение # 15
Сообщений: 737
Репутация: 61 [ +/- ]
Если игрок выйдет а таймер запущен будут ошибки в логах скорее всего)
Код
if(GetClientTeam(client) == 2) //Если client Тер, то { CreateTimer(10.0, Timer, GetClientUserId(client)); //Создаем таймер, например, на 10 сек } public Action:Timer(Handle:timer, any:userid) // По истечению таймера { new client = GetClientOfUserId(userid); if(client > 0) SetEntityMoveType(client, MOVETYPE_FLY); // Делаешь полет терам }
С НОВЫМ ГОДОМ!!!=)