pawno урок tazer/тазер пистолет с глушителем
admin Дата: Воскресенье, 26.05.2013, 17:57:04 | Сообщение # 1
Группа: Администраторы
Сообщений: 3869
Суть урока таков. Когда вы стреляете с пистолета глушителя то игрок падает на землю и замораживается на пару секунд. Этот урок подходит очень для копов чтобы легче было ловить преступников. И так начнем Верху мода где все #define вставляем: Код
#define TAZE_WEAPON 23 // id оружия на котором будет срабатывать tazer. #define TAZE_TIMER 5000 // Время в сек.когда человек может встать #define TAZE_SPARK 18717 // искры объекта, можете это не трогать #define TAZE_DESTROY 1250 // время в сек.когда игрок лежит #define TAZE_LOSEHP 1 // Если вы поставили 1 то когда игрок лежит у него будут сниматься жизни , если поставите 0 то жизни будут оставаться на месте.
Верху мода где все new вставляем: Код
new Tazer[MAX_PLAYERS]; new Spark[MAX_PLAYERS]; new Tazed[MAX_PLAYERS];
Верху мода где все forward вставляем: Код
forward DestroySpark(playerid); forward TazedRemove(playerid);
После этого ищем public OnPlayerConnect и туда вставляем: Код
Tazed[playerid] = 0; Tazer[playerid] = 0;
Примерно так должен быть public OnPlayerConnect Код
public OnPlayerConnect(playerid) { Tazed[playerid] = 0; Tazer[playerid] = 0; return 1; }
После этого ищем public OnPlayerGiveDamage и туда вставляем: Код
if(Tazer[playerid] == 1 && GetPlayerWeapon(playerid) == TAZE_WEAPON) { new Float:health,losehp; GetPlayerHealth(damagedid,health); losehp = TAZE_LOSEHP; if(Tazed[damagedid] == 1) return 1; new Float:x, Float:y, Float:z; GetPlayerPos(damagedid, x, y, z); ClearAnimations(damagedid); ApplyAnimation(damagedid,"PED","KO_skid_front",4.1,0,1,1,1,0); Spark[damagedid] = CreateObject(TAZE_SPARK, x, y, z-3, 0, 0, 0); SetTimerEx("DestroySpark", TAZE_DESTROY, 0, "i", damagedid); SetTimerEx("TazedRemove", TAZE_TIMER, 0, "i", damagedid); //TogglePlayerControllable(damagedid, 0); Tazed[damagedid] = 1; if(losehp) {} else SetPlayerHealth(damagedid, health+amount); }
Примерно так должен быть public OnPlayerGiveDamage Код
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid) { if(Tazer[playerid] == 1 && GetPlayerWeapon(playerid) == TAZE_WEAPON) { new Float:health,losehp; GetPlayerHealth(damagedid,health); losehp = TAZE_LOSEHP; if(Tazed[damagedid] == 1) return 1; new Float:x, Float:y, Float:z; GetPlayerPos(damagedid, x, y, z); ClearAnimations(damagedid); ApplyAnimation(damagedid,"PED","KO_skid_front",4.1,0,1,1,1,0); Spark[damagedid] = CreateObject(TAZE_SPARK, x, y, z-3, 0, 0, 0); SetTimerEx("DestroySpark", TAZE_DESTROY, 0, "i", damagedid); SetTimerEx("TazedRemove", TAZE_TIMER, 0, "i", damagedid); //TogglePlayerControllable(damagedid, 0); Tazed[damagedid] = 1; if(losehp) {} else SetPlayerHealth(damagedid, health+amount); } return 1; }
Потом ищем public OnPlayerCommandText и туда вставляем: Код
if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; }
Примерно так должен быть public OnPlayerCommandText Код
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; } return 0; }
Потом в любое место вставляем две функции publica Код
public DestroySpark(playerid) { DestroyObject(Spark[playerid]); return 1; } public TazedRemove(playerid) { TogglePlayerControllable(playerid, 1); ClearAnimations(playerid); Tazed[playerid] = 0; return 1; }
by 26_RUSSS
zm-jail.ru Разработка сайта samp-pawno.ru
Сообщение Суть урока таков. Когда вы стреляете с пистолета глушителя то игрок падает на землю и замораживается на пару секунд. Этот урок подходит очень для копов чтобы легче было ловить преступников. И так начнем Верху мода где все #define вставляем: Код
#define TAZE_WEAPON 23 // id оружия на котором будет срабатывать tazer. #define TAZE_TIMER 5000 // Время в сек.когда человек может встать #define TAZE_SPARK 18717 // искры объекта, можете это не трогать #define TAZE_DESTROY 1250 // время в сек.когда игрок лежит #define TAZE_LOSEHP 1 // Если вы поставили 1 то когда игрок лежит у него будут сниматься жизни , если поставите 0 то жизни будут оставаться на месте.
Верху мода где все new вставляем: Код
new Tazer[MAX_PLAYERS]; new Spark[MAX_PLAYERS]; new Tazed[MAX_PLAYERS];
Верху мода где все forward вставляем: Код
forward DestroySpark(playerid); forward TazedRemove(playerid);
После этого ищем public OnPlayerConnect и туда вставляем: Код
Tazed[playerid] = 0; Tazer[playerid] = 0;
Примерно так должен быть public OnPlayerConnect Код
public OnPlayerConnect(playerid) { Tazed[playerid] = 0; Tazer[playerid] = 0; return 1; }
После этого ищем public OnPlayerGiveDamage и туда вставляем: Код
if(Tazer[playerid] == 1 && GetPlayerWeapon(playerid) == TAZE_WEAPON) { new Float:health,losehp; GetPlayerHealth(damagedid,health); losehp = TAZE_LOSEHP; if(Tazed[damagedid] == 1) return 1; new Float:x, Float:y, Float:z; GetPlayerPos(damagedid, x, y, z); ClearAnimations(damagedid); ApplyAnimation(damagedid,"PED","KO_skid_front",4.1,0,1,1,1,0); Spark[damagedid] = CreateObject(TAZE_SPARK, x, y, z-3, 0, 0, 0); SetTimerEx("DestroySpark", TAZE_DESTROY, 0, "i", damagedid); SetTimerEx("TazedRemove", TAZE_TIMER, 0, "i", damagedid); //TogglePlayerControllable(damagedid, 0); Tazed[damagedid] = 1; if(losehp) {} else SetPlayerHealth(damagedid, health+amount); }
Примерно так должен быть public OnPlayerGiveDamage Код
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid) { if(Tazer[playerid] == 1 && GetPlayerWeapon(playerid) == TAZE_WEAPON) { new Float:health,losehp; GetPlayerHealth(damagedid,health); losehp = TAZE_LOSEHP; if(Tazed[damagedid] == 1) return 1; new Float:x, Float:y, Float:z; GetPlayerPos(damagedid, x, y, z); ClearAnimations(damagedid); ApplyAnimation(damagedid,"PED","KO_skid_front",4.1,0,1,1,1,0); Spark[damagedid] = CreateObject(TAZE_SPARK, x, y, z-3, 0, 0, 0); SetTimerEx("DestroySpark", TAZE_DESTROY, 0, "i", damagedid); SetTimerEx("TazedRemove", TAZE_TIMER, 0, "i", damagedid); //TogglePlayerControllable(damagedid, 0); Tazed[damagedid] = 1; if(losehp) {} else SetPlayerHealth(damagedid, health+amount); } return 1; }
Потом ищем public OnPlayerCommandText и туда вставляем: Код
if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; }
Примерно так должен быть public OnPlayerCommandText Код
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; } return 0; }
Потом в любое место вставляем две функции publica Код
public DestroySpark(playerid) { DestroyObject(Spark[playerid]); return 1; } public TazedRemove(playerid) { TogglePlayerControllable(playerid, 1); ClearAnimations(playerid); Tazed[playerid] = 0; return 1; }
by 26_RUSSS
Автор - admin Дата добавления - 26.05.2013 в 17:57:04
Mattxl8 Дата: Четверг, 22.08.2013, 23:00:49 | Сообщение # 2
Группа: Пользователи
Сообщений: 5
Я хочу ево сделать только для админов можно сделать штобы командой ево вызвать ну пример /tweapon id игрока количесто патронов
Сообщение Я хочу ево сделать только для админов можно сделать штобы командой ево вызвать ну пример /tweapon id игрока количесто патронов Автор - Mattxl8 Дата добавления - 22.08.2013 в 23:00:49
admin Дата: Пятница, 23.08.2013, 13:26:17 | Сообщение # 3
Группа: Администраторы
Сообщений: 3869
Цитата (Mattxl8 )
Я хочу ево сделать только для админов можно сделать штобы командой ево вызвать ну пример /tweapon id игрока количесто патронов
вот тут меняешь ид оружия на котором будет работать Код
#define TAZE_WEAPON 23 // id оружия на котором будет срабатывать tazer
а вот с ркон админа будеть работать Код
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { if (!isPlayerAdmin(playerid)) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); } else { sendPlayerMessage( playerid, "Вы не администратор, вы не можете использовать эту функцию." ); } } return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if (!isPlayerAdmin(playerid)) { if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else { sendPlayerMessage( playerid, "Вы не администратор, вы не можете использовать эту функцию." ); } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; } return 0; }
zm-jail.ru Разработка сайта samp-pawno.ru
Сообщение Цитата (Mattxl8 )
Я хочу ево сделать только для админов можно сделать штобы командой ево вызвать ну пример /tweapon id игрока количесто патронов
вот тут меняешь ид оружия на котором будет работать Код
#define TAZE_WEAPON 23 // id оружия на котором будет срабатывать tazer
а вот с ркон админа будеть работать Код
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/sdpistol", cmdtext, true, 6) == 0) { if (!isPlayerAdmin(playerid)) { GivePlayerWeapon(playerid, TAZE_WEAPON, 100); } else { sendPlayerMessage( playerid, "Вы не администратор, вы не можете использовать эту функцию." ); } } return 1; } if (strcmp("/tazer", cmdtext, true, 6) == 0) { new string[256]; new sendername[MAX_PLAYER_NAME]; GetPlayerName(playerid, sendername, sizeof(sendername)); if (!isPlayerAdmin(playerid)) { if(Tazer[playerid] == 0) { if(GetPlayerWeapon(playerid) == TAZE_WEAPON) {} else return SendClientMessage(playerid, 0xFFFFFFFF, "{DC0C0C}Тазер: {FFFFFF}Прикрепить tazer к пистолету с глушитилем?."); Tazer[playerid] = 1; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы взяли tazer к пистолету с глушителем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else { sendPlayerMessage( playerid, "Вы не администратор, вы не можете использовать эту функцию." ); } else if(Tazer[playerid] == 1) { Tazer[playerid] = 0; format(string, sizeof(string), "{DC0C0C}Тазер: {FFFFFF}Вы сняли тазер с пистолета с глушитилем, %s.", sendername); SendClientMessage(playerid, 0xFFFFFFFF, string); return 1; } else Tazer[playerid] = 0; return 1; } return 0; }
Автор - admin Дата добавления - 23.08.2013 в 13:26:17
Bumer Дата: Среда, 07.12.2016, 17:32:39 | Сообщение # 4
Группа: Пользователи
Сообщений: 11
Надо добавить координаты? или все уже готовое есть ?
Сообщение Надо добавить координаты? или все уже готовое есть ? Автор - Bumer Дата добавления - 07.12.2016 в 17:32:39
admin Дата: Среда, 21.12.2016, 15:25:40 | Сообщение # 5
Группа: Администраторы
Сообщений: 3869
Цитата Bumer (
)
Надо добавить координаты? или все уже готовое есть ?
там все готовое
zm-jail.ru Разработка сайта samp-pawno.ru
Сообщение Цитата Bumer (
)
Надо добавить координаты? или все уже готовое есть ?
там все готовое Автор - admin Дата добавления - 21.12.2016 в 15:25:40
Загрузка страницы, займет меньше минуты...
Статистика Форума
Последнии темы
Читаемые темы
Лучшие пользователи
Новые пользователи