637UP
Дата: Среда, 10.02.2016, 00:10 | Сообщение # 1
Новичок
Сообщений: 27
Статус: Offline
Всем привет. Многие замечали на посторонних серверах администраторы делают дискотеки у мэрии и прочие мероприятия.
Сегодня я покажу вам несколько команд:
1. /createobj - Создает объект и позволяет его редактировать.
2. /removeobj - Удаляет последний созданный объект
3. /setplayerobject - Прикрепляет объект к игроку и позволяет его редактировать.
4. /removeplayerobject - Удаляет объект у игрока.
Как это выглядит:
Собственно команды: (Стандартный командный процессор)
Код
if(strcmp(cmd, "/createobj", true) == 0) // Создать обьект { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора tmp = strtok(cmdtext, idx); new object = strval(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /createobj [id объекта]"); new Float: x, Float: y, Float: z; GetPlayerPos(playerid, x, y, z); new objectid = CreateObject(object, x, y, z-0.35, 0.0, 0.0, 0.0); EditObject(playerid, objectid); SetPVarInt(playerid, "ObjectID", objectid); SendClientMessage(playerid, COLOR_WHITE, "Объект установлен. Удалить: /removeobj"); return 1; } if(strcmp(cmd, "/removeobj", true) == 0) // Удалить ПОСЛЕДНИЙ СОЗДАНЫЙ ОБЪЕКТ { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора DestroyObject(GetPVarInt(playerid, "ObjectID")); SendClientMessage(playerid, COLOR_WHITE, "Объект удалён"); return 1; } if(strcmp(cmd, "/setplayerobject", true) == 0) // Установка обьекта на игрока { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора tmp = strtok(cmdtext, idx); new playa = ReturnUser(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /setplayerobject [playerid] [слот] [id объекта] [кость]"); tmp = strtok(cmdtext, idx); new slot = strval(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /setplayerobject [playerid] [слот] [id объекта] [кость]"); tmp = strtok(cmdtext, idx); new object = strval(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /setplayerobject [playerid] [слот] [id объекта] [кость]"); tmp = strtok(cmdtext, idx); new kost = strval(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /setplayerobject [playerid] [слот] [id объекта] [кость]"); SetPlayerAttachedObject(playa, slot, object, kost, 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 1, 1, 1); EditAttachedObject(playerid, slot); SetPVarInt(playerid, "GetPlayerObject", playa); SendClientMessage(playerid, COLOR_WHITE, "Вы установили объект игроку"); return 1; } if(strcmp(cmd, "/removeplayerobject", true) == 0) // Удалить обьект у игрока { if(PlayerInfo[playerid][pAdmin] < 7) return 1; //Проверка на админа tmp = strtok(cmdtext, idx); new playa = ReturnUser(tmp); new slot = strval(tmp); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Введите: /removeplayerobject [playerid] [слот]"); RemovePlayerAttachedObject(playa, slot); SendClientMessage(playerid, COLOR_WHITE, "Вы удалили объект"); return 1; }
Процессор: DC_CMD + sscanf
Код
CMD:createobj(playerid,params[]) { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора if(sscanf(params, "d", params[0])) return SCM(playerid,COLOR_GREY,"Введите: /createobj [id Обьекта]"); new Float: x, Float:y, Float: z; GetPlayerPos(playerid, x, y, z); new objectid = CreateObject(params[0], x, y, z-0.35, 0.0, 0.0, 0.0); EditObject(playerid, objectid); SetPVarInt(playerid, "ObjectID", objectid); SendClientMessage(playerid, COLOR_WHITE, "Объект установлен. Удалить: /removeobj"); return 1; } CMD:removeobj(playerid) // Удалить ПОСЛЕДНИЙ СОЗДАНЫЙ ОБЪЕКТ { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора DestroyObject(GetPVarInt(playerid, "ObjectID")); SendClientMessage(playerid, COLOR_WHITE, "Объект удалён"); return 1; } CMD:setplayerobject(playerid,params[]) // Установка обьекта на игрока { if(PlayerInfo[playerid][pAdmin] < 7) return 1; // Проверка на Администратора if(sscanf(params, "dddd", params[0],params[1],params[2],params[3])) return SCM(playerid,COLOR_GREY,"Введите: /setplayerobject [playerid] [слот] [id Обьекта] [Кость]"); SetPlayerAttachedObject(params[0], params[1], params[2],params[3], 0.0, -0.0, 0.0, 0.0, 0.0, 0.0, 1, 1, 1); EditAttachedObject(playerid, params[1]); SetPVarInt(playerid, "GetPlayerObject", params[0]); SendClientMessage(playerid, COLOR_WHITE, "Вы установили объект игроку"); return 1; } CMD:removeplayerobject(playerid,params[]) // Удалить обьект у игрока { if(PlayerInfo[playerid][pAdmin] < 7) return 1; //Проверка на админа if(sscanf(params, "dd", params[0],params[1])) return SCM(playerid,COLOR_GREY,"Введите: /removeplayerobject [playerid] [слот]]"); RemovePlayerAttachedObject(params[0], params[1]); SendClientMessage(playerid, COLOR_WHITE, "Вы удалили объект"); return 1; }
vk.com/readyaimfire
Сообщение отредактировал 637UP - Среда, 10.02.2016, 00:12
TOPMAN
Дата: Четверг, 24.03.2016, 17:48 | Сообщение # 2
Боец
Сообщений: 111
Статус: Offline
Спасибо офигенно, обьект как кручу показывает всем =)
100 дней на CM [✔] 10 репутации на CM [✔] Новичок [✔] 150 дней на CM [✔] 25 репутации на CM [✔] Любитель [✔] 200 дней на CM [✔] 50 репутации на CM [✔] Боец [✔] 300 дней на CM [✔] 100 репутации на CM [✔] Боец(х2) [✔] 430 дней на CM [✔] 250 репутации на CM [✔] Бывалый [✖] 600 дней на CM [✔] 300 репутации на CM [✔] Знаток [✖] 700 дней на CM [✔] 400 репутации на CM [✔] Советник [✖] 800 дней на CM [✔] 500 репутации на CM [✖] Авторитет [✖] 900 дней на CM [✔] 600 репутации на CM [✖] Легенда [✖] 1000 дней на CM [✔] 1000+ репутации на CM [✖] Cheat-Master[✖]