• Страница 1 из 1
  • 1
Модератор форума: drifter-dron, admin, TweIk  
Бан на время
Dimka_71rusДата: Суббота, 08.10.2011, 14:30:33 | Сообщение # 1

Группа: Пользователи
Сообщений: 360
Напишите пож как сделать бан по нику на время,ток не кидайте скрипт т к они не работают или работают на 0.3a или скиньте проверенный

Лучшие моды,скрипты,карты - вы найдёте на сайте samp-pawno.ru
Самые чёткие ответы на ваши вопросы и помощь по скритингу вы найдёте на сайте forum-pawno.ru


Сообщение отредактировал Dimka_71rus - Суббота, 08.10.2011, 14:30:56
 
СообщениеНапишите пож как сделать бан по нику на время,ток не кидайте скрипт т к они не работают или работают на 0.3a или скиньте проверенный

Автор - Dimka_71rus
Дата добавления - 08.10.2011 в 14:30:33
[east_side]_traneДата: Воскресенье, 09.10.2011, 09:57:49 | Сообщение # 2

Группа: Пользователи
Сообщений: 443
Quote
Бан на время с использованием unix времени

Создай папку в scriptfiles с названием banlist
Скачай инклуды отсюда: include
Время перевода с Unix на нормальное настроенно на московское

В начало мода вставляем если нету:
Code
#include <MxINI>
#include <mxdate>
#define DIALOGUNBAN 162 // id диалога для высвечивания даты


В конец мода:
Code

stock GetBan(playerid)
{
      new PlayerNick[MAX_PLAYER_NAME],string[255];
      GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
      format(string, sizeof(string), "banlist/%s.ini", PlayerNick);
      if(fexist(string))
      {
             new OpenBan = ini_openFile(string);
             new bantime, unbantime, PlayerBan[MAX_PLAYER_NAME], reason[128];
             ini_getInteger(OpenBan, "BanTime", bantime);
             ini_getInteger(OpenBan, "UnBanTime", unbantime);
             ini_getString(OpenBan, "PlayerBan", PlayerBan);
             ini_getString(OpenBan, "Reason", reason);
             ini_closeFile(OpenBan);
             if(gettime() >= unbantime) return UnBan(PlayerNick);
             else
             {
                   format(string, sizeof(string), "\
                   Дата бана: %s\n\
                   Дата Разбана: %s\n\
                   Забанил: %s\n\
                   Причина бана: %s\n\
                   ",
                   date("%dd.%mm.%yyyy в %hh:%ii:%ss",bantime),
                   date("%dd.%mm.%yyyy в %hh:%ii:%ss",unbantime),
                   PlayerBan,reason);
                   ShowPlayerDialog(playerid,DIALOGUNBAN,0,"Вы забанены",string,"Выйти","");
                   return Kick(playerid);
             }    
      }
      else return true;
}

stock UnBan(playerid[])
{
      new string[64];
      format(string, sizeof(string), "banlist/%s.ini", playerid);
      return fremove(string);
}

stock AddBan(player, playerid[], giveplayerid[], type = 1, chislo = 0, reason[])
{
      new totalban = 0;
      switch(type)
      {
           case 1: totalban = 60*chislo; // минуты
           case 2: totalban = 3600*chislo; // часы
           case 3: totalban = 86400*chislo; // сутки
           default: totalban = chislo; // секунды
      }
      new string[64];
      format(string, sizeof(string), "banlist/%s.ini", playerid);
      new OpenBan = ini_createFile(string);   
      if(OpenBan < 0) ini_openFile(string);   
      ini_setInteger(OpenBan, "BanTime", gettime());
      ini_setInteger(OpenBan, "UnBanTime", gettime()+totalban);
      ini_setString(OpenBan, "PlayerBan", giveplayerid);
      ini_setString(OpenBan, "Reason", reason);
      ini_closeFile(OpenBan); // Закрываем файл.    
      ShowPlayerDialog(player,DIALOGUNBAN,0,"Вы забанены","{FF0000}Вы забанены","Выйти","");   
      return Kick(player);
}


В OnPlayerConnect:
Code

GetBan(playerid);


Команду бана и разбана переделай под себя( думаю справишься):
Code

if(strcmp(cmd, "/ban", true) == 0)
{
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         giveplayerid = strval(tmp);
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         new type = strval(tmp);
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         new chislo = strval(tmp);
         if(PlayerInfo[playerid][pAdmin] >= 4)
         {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                       new length = strlen(cmdtext);
                       while ((idx < length) && (cmdtext[idx] <= ' ')) idx++;
                       new offset = idx;
                       new result[64];
                       while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
                       {
                    result[idx - offset] = cmdtext[idx];
                    idx++;
                       }
                       result[idx - offset] = EOS;
                       if(!strlen(result)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
                       new PlayerNick[MAX_PLAYER_NAME], PlayerBan[MAX_PLAYER_NAME];
                       GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
                       GetPlayerName(giveplayerid, PlayerBan, MAX_PLAYER_NAME);
                       AddBan(giveplayerid, PlayerBan, PlayerNick, type, chislo, result);
                       return true;
                }//not connected
         }
         return true;
}   
if(strcmp(cmd,"/unban",true)==0)
{
         if(PlayerInfo[playerid][pAdmin] >= 8)
         {
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_GRAD1,"/unban [players nick]");
                UnBan(tmp);
         }
         return true;
}    


Не проверял, но должно работать ИМХО 11


Pawn скриптер
Мои услуги по оптимизации


Сообщение отредактировал [east_side]_trane - Воскресенье, 09.10.2011, 09:58:53
 
Сообщение
Quote
Бан на время с использованием unix времени

Создай папку в scriptfiles с названием banlist
Скачай инклуды отсюда: include
Время перевода с Unix на нормальное настроенно на московское

В начало мода вставляем если нету:
Code
#include <MxINI>
#include <mxdate>
#define DIALOGUNBAN 162 // id диалога для высвечивания даты


В конец мода:
Code

stock GetBan(playerid)
{
      new PlayerNick[MAX_PLAYER_NAME],string[255];
      GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
      format(string, sizeof(string), "banlist/%s.ini", PlayerNick);
      if(fexist(string))
      {
             new OpenBan = ini_openFile(string);
             new bantime, unbantime, PlayerBan[MAX_PLAYER_NAME], reason[128];
             ini_getInteger(OpenBan, "BanTime", bantime);
             ini_getInteger(OpenBan, "UnBanTime", unbantime);
             ini_getString(OpenBan, "PlayerBan", PlayerBan);
             ini_getString(OpenBan, "Reason", reason);
             ini_closeFile(OpenBan);
             if(gettime() >= unbantime) return UnBan(PlayerNick);
             else
             {
                   format(string, sizeof(string), "\
                   Дата бана: %s\n\
                   Дата Разбана: %s\n\
                   Забанил: %s\n\
                   Причина бана: %s\n\
                   ",
                   date("%dd.%mm.%yyyy в %hh:%ii:%ss",bantime),
                   date("%dd.%mm.%yyyy в %hh:%ii:%ss",unbantime),
                   PlayerBan,reason);
                   ShowPlayerDialog(playerid,DIALOGUNBAN,0,"Вы забанены",string,"Выйти","");
                   return Kick(playerid);
             }    
      }
      else return true;
}

stock UnBan(playerid[])
{
      new string[64];
      format(string, sizeof(string), "banlist/%s.ini", playerid);
      return fremove(string);
}

stock AddBan(player, playerid[], giveplayerid[], type = 1, chislo = 0, reason[])
{
      new totalban = 0;
      switch(type)
      {
           case 1: totalban = 60*chislo; // минуты
           case 2: totalban = 3600*chislo; // часы
           case 3: totalban = 86400*chislo; // сутки
           default: totalban = chislo; // секунды
      }
      new string[64];
      format(string, sizeof(string), "banlist/%s.ini", playerid);
      new OpenBan = ini_createFile(string);   
      if(OpenBan < 0) ini_openFile(string);   
      ini_setInteger(OpenBan, "BanTime", gettime());
      ini_setInteger(OpenBan, "UnBanTime", gettime()+totalban);
      ini_setString(OpenBan, "PlayerBan", giveplayerid);
      ini_setString(OpenBan, "Reason", reason);
      ini_closeFile(OpenBan); // Закрываем файл.    
      ShowPlayerDialog(player,DIALOGUNBAN,0,"Вы забанены","{FF0000}Вы забанены","Выйти","");   
      return Kick(player);
}


В OnPlayerConnect:
Code

GetBan(playerid);


Команду бана и разбана переделай под себя( думаю справишься):
Code

if(strcmp(cmd, "/ban", true) == 0)
{
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         giveplayerid = strval(tmp);
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         new type = strval(tmp);
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
         new chislo = strval(tmp);
         if(PlayerInfo[playerid][pAdmin] >= 4)
         {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                       new length = strlen(cmdtext);
                       while ((idx < length) && (cmdtext[idx] <= ' ')) idx++;
                       new offset = idx;
                       new result[64];
                       while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
                       {
                    result[idx - offset] = cmdtext[idx];
                    idx++;
                       }
                       result[idx - offset] = EOS;
                       if(!strlen(result)) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /ban [playerid] [type:(1-минуты)(2-часы)(3-дни)(другое секунды)] [число] [причина]");
                       new PlayerNick[MAX_PLAYER_NAME], PlayerBan[MAX_PLAYER_NAME];
                       GetPlayerName(playerid, PlayerNick, MAX_PLAYER_NAME);
                       GetPlayerName(giveplayerid, PlayerBan, MAX_PLAYER_NAME);
                       AddBan(giveplayerid, PlayerBan, PlayerNick, type, chislo, result);
                       return true;
                }//not connected
         }
         return true;
}   
if(strcmp(cmd,"/unban",true)==0)
{
         if(PlayerInfo[playerid][pAdmin] >= 8)
         {
                tmp = strtok(cmdtext,idx);
                if(!strlen(tmp)) return SendClientMessage(playerid,COLOR_GRAD1,"/unban [players nick]");
                UnBan(tmp);
         }
         return true;
}    


Не проверял, но должно работать ИМХО 11

Автор - [east_side]_trane
Дата добавления - 09.10.2011 в 09:57:49
Dimka_71rusДата: Воскресенье, 09.10.2011, 10:15:36 | Сообщение # 3

Группа: Пользователи
Сообщений: 360
[east_side]_trane, 25
Code
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(698) : error 021: symbol already defined: "ini_getInteger"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(865) : error 021: symbol already defined: "ini_getFloat"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1040) : error 021: symbol already defined: "ini_setString"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1326) : error 021: symbol already defined: "ini_setInteger"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1624) : error 021: symbol already defined: "ini_setFloat"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1919) : error 021: symbol already defined: "ini_removeKey"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(2118) : error 021: symbol already defined: "ini_getErrorInfo"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(792) : warning 219: local variable "giveplayerid" shadows a variable at a preceding level
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(964) : warning 213: tag mismatch
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 017: undefined symbol "PHP"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 029: invalid expression, assumed zero
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 029: invalid expression, assumed zero
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : fatal error 107: too many error messages on one line

Всё не надо я исправил Fuu


Лучшие моды,скрипты,карты - вы найдёте на сайте samp-pawno.ru
Самые чёткие ответы на ваши вопросы и помощь по скритингу вы найдёте на сайте forum-pawno.ru


Сообщение отредактировал Dimka_71rus - Воскресенье, 09.10.2011, 10:22:07
 
Сообщение[east_side]_trane, 25
Code
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(698) : error 021: symbol already defined: "ini_getInteger"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(865) : error 021: symbol already defined: "ini_getFloat"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1040) : error 021: symbol already defined: "ini_setString"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1326) : error 021: symbol already defined: "ini_setInteger"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1624) : error 021: symbol already defined: "ini_setFloat"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(1919) : error 021: symbol already defined: "ini_removeKey"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\pawno\include\MxINI.inc(2118) : error 021: symbol already defined: "ini_getErrorInfo"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(792) : warning 219: local variable "giveplayerid" shadows a variable at a preceding level
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(964) : warning 213: tag mismatch
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 017: undefined symbol "PHP"
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 029: invalid expression, assumed zero
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : error 029: invalid expression, assumed zero
D:\Всё для компьютера\Сервер\дополнительно\GalaxY мод разархивированный\gamemodes\GalaxY.pwn(35936) : fatal error 107: too many error messages on one line

Всё не надо я исправил Fuu

Автор - Dimka_71rus
Дата добавления - 09.10.2011 в 10:15:36
[east_side]_traneДата: Воскресенье, 09.10.2011, 11:20:38 | Сообщение # 4

Группа: Пользователи
Сообщений: 443
Проверишь отпишись... хочу знать работает ли

Pawn скриптер
Мои услуги по оптимизации
 
СообщениеПроверишь отпишись... хочу знать работает ли

Автор - [east_side]_trane
Дата добавления - 09.10.2011 в 11:20:38
Dimka_71rusДата: Воскресенье, 09.10.2011, 13:21:14 | Сообщение # 5

Группа: Пользователи
Сообщений: 360
[east_side]_trane, все работает все оки доки спс тебе :)

Лучшие моды,скрипты,карты - вы найдёте на сайте samp-pawno.ru
Самые чёткие ответы на ваши вопросы и помощь по скритингу вы найдёте на сайте forum-pawno.ru
 
Сообщение[east_side]_trane, все работает все оки доки спс тебе :)

Автор - Dimka_71rus
Дата добавления - 09.10.2011 в 13:21:14
[east_side]_traneДата: Воскресенье, 09.10.2011, 13:48:09 | Сообщение # 6

Группа: Пользователи
Сообщений: 443
Просто спс не принимается)) :D
Я рад что работает...


Pawn скриптер
Мои услуги по оптимизации


Сообщение отредактировал [east_side]_trane - Воскресенье, 09.10.2011, 13:48:27
 
СообщениеПросто спс не принимается)) :D
Я рад что работает...

Автор - [east_side]_trane
Дата добавления - 09.10.2011 в 13:48:09
Dimka_71rusДата: Четверг, 10.11.2011, 22:25:07 | Сообщение # 7

Группа: Пользователи
Сообщений: 360
[east_side]_trane, а можно сделать чтоб в чате писалось когда банишь типа так как и в кике
По примеру: Name Был забанен администратором Dimka_71rus Причина: чит
вот по примеру как тут в кике

и как убрать чтоб когда банишь и разбаниваешь в чат не писалась вот ета шняга banlist/%s.ini
С меня + и награда


Лучшие моды,скрипты,карты - вы найдёте на сайте samp-pawno.ru
Самые чёткие ответы на ваши вопросы и помощь по скритингу вы найдёте на сайте forum-pawno.ru
 
Сообщение[east_side]_trane, а можно сделать чтоб в чате писалось когда банишь типа так как и в кике
По примеру: Name Был забанен администратором Dimka_71rus Причина: чит
вот по примеру как тут в кике

и как убрать чтоб когда банишь и разбаниваешь в чат не писалась вот ета шняга banlist/%s.ini
С меня + и награда

Автор - Dimka_71rus
Дата добавления - 10.11.2011 в 22:25:07
ZAVASKASДата: Пятница, 29.06.2012, 12:54:56 | Сообщение # 8

Группа: Пользователи
Сообщений: 1
и как убрать чтоб когда банишь и разбаниваешь в чат не писалась вот ета шняга banlist/%s.ini
 
Сообщениеи как убрать чтоб когда банишь и разбаниваешь в чат не писалась вот ета шняга banlist/%s.ini

Автор - ZAVASKAS
Дата добавления - 29.06.2012 в 12:54:56
  • Страница 1 из 1
  • 1
Поиск:
Загрузка страницы, займет меньше минуты...
Загрузка...

Статистика Форума
Последнии темы Читаемые темы Лучшие пользователи Новые пользователи
Система телефонов поломалась
Не в себе
фильм скалайн
Трансформеры 3
форсаж 6
Ищу [FS]Для админок на сервер
нужны координаты карты для отметки зон...
Помогите найти мод
pawno урок автоматические ворота
обращение к скриптерам.
Вопросы по скриптингу
Ваши ошибки при компиляции GM/FS

Вопросы по скриптингу

(1081)

Считаем до 1000

(274)

Ваши ошибки при компиляция gm

(260)

Набор в команду

(80)

Ваши ошибки при компиляции GM/FS

(71)

вопроосы по скриптингу от 22.04.2013

(64)

Баннеробмен

(64)

несколько команд на samp 0.3 c

(64)

Оценки сайта samp-pawno.ru

(55)

Заказ хостинга

(51)

Набор в команду(форум)

(45)

Урок №61 по созданию системы авто для GodFather

(45)

admin

(3869)

[east_side]_trane

(443)

TWiX

(316)

valych

(501)

drifter-dron

(477)

danik_rok

(317)

Dimka_71rus

(360)

Drifter96

(300)

MaNb9K

(220)

[MTA]MaPeR5518

(181)

Dima_Tkach

(107)

Nik_Ull

(184)

ps798829

(Среда 08:23:47)

system32xzxz

(Четверг 09:25:24)

torbin169

(Суббота 23:09:29)

kuchuk_00

(Суббота 17:10:14)

artem_boyko_3

(Суббота 15:57:37)

greggelbak

(Среда 18:29:37)

vladisvlavs

(Среда 13:51:57)

add02102002

(Понедельник 22:37:15)

Диман221

(Понедельник 18:12:45)

almas051004

(Воскресенье 11:05:32)

megasuccessms

(Суббота 14:15:36)

nawe

(Пятница 22:25:23)

Вверх
18:14:53
ОбновитьСмайлыУправление мини-чатом
ЧАТ-PAWNO
2010-2025

vkontakte :samp-pawno.ru: