21:17
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
        
Зацените (13)
Max 24.02.2017 22:08
Подвиcание SA-MP (2)
Max 20.02.2017 21:57
MYSQL Донат (2)
JasonGordon 08.02.2017 10:39
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 78 из 151«127677787980150151»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Вопросы и ответы по GTA SAMP [от 19.03.2013]
WeddewДата: Вторник, 19.03.2013, 15:11 | Сообщение # 1
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.


Новичкам:


  • Внятно объясняйте Вашу проблему, если Вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
  • Задавайте вопросы исключительно по коду, а не по системам, которые имеются у Вас в моде.
  • Помощь идет только по желанию пользователя, если человек помог Вам только частично, не нужно начинать поливать его грязью.
  • Возможно тип Вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
  • В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за Вас.
  • Если Вы хотите отблагодарить пользователя, жмите на кнопку . (Только для продвинутых, и выше)
  • Если Вы уже задавали вопрос и не получили на него ответа, то лучше написать в ЛС одному из участников группы , чем засорять тему.
  • Если Вы сами решили свою проблему, то напишите, как Вы ее решили.
  • Если Вас просят выложить код функций, то используйте для этого сервис pastebin.com


Скриптерам:

  • Не оскорблять новичков.
  • Не засорять тему сообщениями, подобные этому: "Закрой PAWNO и иди делай уроки".
  • Не посылать в поиск. Пользователь итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
  • Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.



Инструкции:

  • [cut noguest=Краткая инструкция для вшивания FS в мод]
    1) Все из callback OnFilterScriptInit вставляем в конец callback OnGameModeInit перед словом return.
    2) Все из callback OnFilterScriptExit вставляем в конец callback OnGameModeExit перед словом return.
    3) Все объявления переменных (new ...) и констант (const ...; #define ... ...) в начало мода.
    4) Все прототипы (forward ...(...) ) ко всем прототипам.
    5) Все описания нестандартных функций (public ...(...); stock ...(...); ...(...){...} ), которых нет в моде, вставляем в конец мода.

    P.S. Данный мануал не гарантирует, что после копирования все будет работать, так как еще потребуется подгонять одни системы под другие.
    P.P.S Если в одном из callback`ов Вы не обнаружили кода, то переходите к следующему пункту инструкции.
    [/cut]
  • [cut noguest=Защита от ботов]
    В OnPlayerConnect
    [pwn]if(GetPlayersSameIp(playerid) > 3) Kick(playerid);[/pwn]
    В конец мода
    [pwn]stock GetPlayersSameIp(playerid)
    {//by Weddew
    //Возвращает количество подключенных игроков с таким же IP как у playerid
    new count = 0, p_ip[16], i_ip[16];
    GetPlayerIp(playerid, p_ip, sizeof(p_ip));
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    GetPlayerIp(playerid, i_ip, sizeof(i_ip));
    if(i != playerid)
    {
    if(!strcmp(p_ip, i_ip, false)) count++;
    }
    }
    return count;
    }[/pwn]
    [/cut]
  • [cut noguest=Проверка на Role Play ник]
    В конец мода:
    [pwn]
    stock IsARPNickname(playerid)
    {
    //by Weddew
    new p_n[MAX_PLAYER_NAME], dcount = 0;
    GetPlayerName(playerid, p_n, sizeof(p_n))
    for(i = 0; i < strlen(p_n); i++)
    {
    if(p_n[i] == '_') dcount++;
    }
    if(dcount != 1 || p_n[0] == '_' || p_n[strlen(p_n)-1] == '_') return false;
    return true;
    }[/pwn]

    В OnPlayerConnect

    [pwn]
    if(!IsARPNickname(playerid)) Kick(playerid);[/pwn]

    P.S.:
    Не пропустит: _Nick_Name_, _Nick_Name, NickName_
    Пропустит: Nick_Name, NICK_NAME, NiCk_name, nick_name[/cut]




www.weddew-shop.ru


Сообщение отредактировал Weddew - Среда, 23.10.2013, 21:45
GeryyДата: Воскресенье, 07.07.2013, 01:27 | Сообщение # 1156
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (Fen1ks)
Дело такое. Я использую плагин владокса который он слил. Вот в чем проблема: От игроков могут идти по одному разу вот такие сообщения в лог: Warning: PlayerDialogResponse PlayerId: 47 dialog ID doesn't match last sent dialog ID
Плагин естественно сразу банит.
Вот как мне сменить инклуд что-бы банило за 3 или 4 раз?
Думаю что-то сюда добавить(красным):

public OnIngameAttackAttempt(attackType, data)
{
if(!IsPlayerConnected(data)) return 1;

switch(attackType)
{
case ATTACK_TYPE_DIALOG_RESPONSE: // PlayerDialogResponse ... dialog ID doesn't match last sent dialog ID
{
BanEx(data, "PlayerDialogResponse attack (Dialog match)");
printf("Anti-Attack Warning: Player %i was banned (Reason: PlayerDialogResponse attack (Dialog match))", data);

return 1;
}


[pwn]

new attackCount[MAX_PLAYERS];

public OnIngameAttackAttempt(attackType, data)
{
if(!IsPlayerConnected(data)) return 1;

switch(attackType)
{
case ATTACK_TYPE_DIALOG_RESPONSE: // PlayerDialogResponse ... dialog ID doesn't match last sent dialog ID
{
attackCount[data] ++;
if(attackCount[data] > 3)
{
attackCount[data] = 0;
BanEx(data, "PlayerDialogResponse attack (Dialog match)");
printf("Anti-Attack Warning: Player %i was banned (Reason: PlayerDialogResponse attack (Dialog match))", data);
}
return 1;
}[/pwn]

Добавлено (07.07.2013, 01:27)
---------------------------------------------

Цитата (vadimka_skipper_)
Народ в чем может быть проблема письмо отправленное с сервера на почту @mail.ru и @gmail.ru не доходит а вот на @yandex.ru все нормально

Возможно шаблон запроса у них немного другой.



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
vadimka_skipper_Дата: Воскресенье, 07.07.2013, 05:25 | Сообщение # 1157
Уверенный в себе
Группа: Продвинутые
Сообщений: 189
Награды: 1
Город: Иркутск
Репутация: 40
Замечания: 0%
Статус:
Цитата (Geryy)
Возможно шаблон запроса у них немного другой.

Что можно сделать в этой ситуации?



Помощь в скриптинге!
Продажа вкладки Hosted - 550 рублей/адрес
Хостинг GTA SAMP
Обмен WMR в Яндекс.Деньги

Skype - Duramar

Fen1ksДата: Воскресенье, 07.07.2013, 13:01 | Сообщение # 1158
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Цитата (Geryy)
[pwn]new attackCount[MAX_PLAYERS];
 
public OnIngameAttackAttempt(attackType, data)
{
if(!IsPlayerConnected(data)) return 1;
 
switch(attackType)
{
case ATTACK_TYPE_DIALOG_RESPONSE: // PlayerDialogResponse ... dialog ID doesn't match last sent dialog ID
{
attackCount[data] ++;
if(attackCount[data] > 3)
{
attackCount[data] = 0;
BanEx(data, "PlayerDialogResponse attack (Dialog match)");
printf("Anti-Attack Warning: Player %i was banned (Reason: PlayerDialogResponse attack (Dialog match))", data);
}
return 1;
}[/pwn]

Ничего не изменилось. Посылаю один пакет банит, только через 3 секунды
[pwn][11:57:02] Warning: PlayerDialogResponse PlayerId: 0 dialog ID doesn't match last sent dialog ID
[11:57:05] Anti-Attack Warning: Player 0 was banned (Reason: PlayerDialogResponse attack (Dialog match))[/pwn]

Добавлено (07.07.2013, 13:01)
---------------------------------------------
А мне нужно если от игрока пришло 3 таких пакета.

GeryyДата: Воскресенье, 07.07.2013, 13:38 | Сообщение # 1159
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Сколько сработок case ATTACK_TYPE_DIALOG_RESPONSE: происходит, после отправки одного пакета?


Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
Fen1ksДата: Воскресенье, 07.07.2013, 13:47 | Сообщение # 1160
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Цитата (Geryy)
Сколько сработок case ATTACK_TYPE_DIALOG_RESPONSE: происходит, после отправки одного пакета?

То есть сколько раз пишет в лог? Так то один, и банит один раз.
Если что то не то написал не ругайся в инклудах не шарю)

Добавлено (07.07.2013, 13:47)
---------------------------------------------
[pwn]
[12:46:24] [join] nickname has joined the server (0:127.0.0.1)
[12:46:29] Warning: PlayerDialogResponse PlayerId: 0 dialog ID doesn't match last sent dialog ID
[12:46:32] [part] nickname has left the server (0:2)
[12:46:32] Anti-Attack Warning: Player 0 was banned (Reason: PlayerDialogResponse attack (Dialog match))
[/pwn]
вот лог

sehrgetДата: Воскресенье, 07.07.2013, 21:29 | Сообщение # 1161
Постоялец
Группа: Продвинутые
Сообщений: 393
Награды: 2
Город: Украина\Черкассы
Замечания: 40%
Статус:
Возможно ли сделать авто которое не будет спавн после взрыва(будет просто пропадать)?
WeddewДата: Воскресенье, 07.07.2013, 22:20 | Сообщение # 1162
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (sehrget)
Возможно ли сделать авто которое не будет спавн после взрыва(будет просто пропадать)?

Конечно можно.
Пример:
[pwn]new vehicle;

public OnGameModeInit
{
vehicle = CreateVehicle(...); // создаем транспорт
return true;
}

public OnVehicleDeath(vehicleid, killerid)
{
// Если транспорт был уничтожан
if(vehicleid == vehicle) DestroyVehicle(vehicleid); // Удаляем транспорт
return true;
}[/pwn]




www.weddew-shop.ru
MyatKOДата: Понедельник, 08.07.2013, 11:13 | Сообщение # 1163
Уверенный в себе
Группа: Продвинутые
Сообщений: 156
Награды: 2
Город: Казань
Репутация: 121
Замечания: 0%
Статус:
Хочу создать массив с неким текстом, перепробовал несколько вариантов. Вот примерный код, который у меня получился, но он не работает:

Код
new Texts[3] = {
          {"ABC CBA"},
          {"DEF FED"},
          {"GHI IHG"}
};


Скажите, пожалуйста, что я делаю не так? Очень важно, чтобы в кавычках было несколько слов.

ADD: error 020: invalid symbol name "" - ошибка, которую выдает компилятор. Ругается на строку new Texts[3] = {.



Сообщение отредактировал MyatKO - Понедельник, 08.07.2013, 11:14
BorogДата: Понедельник, 08.07.2013, 11:31 | Сообщение # 1164
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус:
MyatKO, нужен двойной массив: на строки и на символы текста
new Texts[3][] =
{
{"ABC CBA"},
{"DEF FED"},
{"GHI IHG"}
};



Silver Break
http://s-break.ru/
http://vk.com/sbreak
Fen1ksДата: Понедельник, 08.07.2013, 14:31 | Сообщение # 1165
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Как сделать бан за ник?
Например заходит чувак с ником: "=]AoC[_HaX_]AoC[=" и его сразу забанило.
Подскажите пожалуйста!

MyatKOДата: Понедельник, 08.07.2013, 14:47 | Сообщение # 1166
Уверенный в себе
Группа: Продвинутые
Сообщений: 156
Награды: 2
Город: Казань
Репутация: 121
Замечания: 0%
Статус:
Цитата (Fen1ks)
к сделать бан за ник?
Например заходит чувак с ником: "=]AoC[_HaX_]AoC[=" и его сразу забанило.
Подскажите пожалуйста!


Код

new nickname[MAX_PLAYER_NAME];
GetPlayerName(playerid, nickname, sizeof(nickname));
if(!strcmp(nickname, "=]AoC[_HaX_]AoC[=", true)) {
       SendClientMessage(playerid, 0xFFFFFFFF, "Забанено");
       printf(stringer);
       Kick(playerid);
       return 1;
}



Сообщение отредактировал MyatKO - Понедельник, 08.07.2013, 14:47
GeryyДата: Понедельник, 08.07.2013, 14:58 | Сообщение # 1167
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (Fen1ks)
Как сделать бан за ник?
Например заходит чувак с ником: "=]AoC[_HaX_]AoC[=" и его сразу забанило.


Функция: http://pastebin.com/EFyv6HhC

можно оставить условия которые тебе нужны.



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
Fen1ksДата: Понедельник, 08.07.2013, 15:05 | Сообщение # 1168
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Цитата (Geryy)

Функция: http://pastebin.com/EFyv6HhC

можно оставить условия которые тебе нужны.

Спасибо)

forumlalalaДата: Понедельник, 08.07.2013, 19:55 | Сообщение # 1169
Новенький
Группа: Пользователи
Сообщений: 4
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Скажите как сделать что бы давался навык оружия при повышении lvl

[cut noguest=СКРИПТ][/cut][pwn]#include <a_samp>
#include <mxINI>

#define FILTERSCRIPT

new PlayerText: tRang[MAX_PLAYERS];
enum info
{
Kills,
Deaths
}
new Data[MAX_PLAYERS][info];
public OnPlayerConnect(playerid)
{
new name[24],path[64];
GetPlayerName(playerid,name,24);
format(path,64,"%s.ini",name);
if(fexist(path))
{
new iniFile = ini_openFile (path);
ini_getInteger ( iniFile, "Kills", Data[playerid][Kills] );
ini_getInteger ( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile ( iniFile );
}
tRang[playerid] = CreatePlayerTextDraw(playerid, 498.000000, 100.000000, " ");
PlayerTextDrawBackgroundColor(playerid, tRang[playerid], 255);
PlayerTextDrawFont(playerid, tRang[playerid], 2);
PlayerTextDrawLetterSize(playerid, tRang[playerid], 0.290000, 1.300000);
PlayerTextDrawColor(playerid, tRang[playerid], -1);
PlayerTextDrawSetOutline(playerid, tRang[playerid], 1);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new name[24],path[64];
GetPlayerName(playerid,name,24);
format(path,64,"%s.ini",name);
if(fexist(path))
{
new iniFile = ini_openFile (path);
ini_setInteger( iniFile, "Kills", Data[playerid][Kills] );
ini_setInteger( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile( iniFile );
}
else
{
new iniFile = ini_createFile (path);
ini_setInteger( iniFile, "Kills", Data[playerid][Kills] );
ini_setInteger( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile( iniFile );
}
return 1;
}
public OnPlayerSpawn(playerid)
{
PlayerTextDrawShow(playerid, tRang[playerid]);
GetPlayerRang(playerid);
return 1;
}
public OnPlayerUpdate(playerid)
{
GetPlayerRang(playerid);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
Data[playerid][Deaths]++;
if(killerid == 0xFFFF)return true;
Data[killerid][Kills]++;
return 1;
}
stock GetPlayerRang(playerid)
{
new string[256];
switch(Data[playerid][Kills])
{
case 0..19:format(string, sizeof(string), "~y~LEVEL: 1~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 20..49:format(string, sizeof(string), "~y~LEVEL: 2~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 50..74:format(string, sizeof(string), "~y~LEVEL: 3~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 75..99:format(string, sizeof(string), "~y~LEVEL: 4~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 100..199:format(string, sizeof(string), "~y~LEVEL: 5~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 200..399:format(string, sizeof(string), "~y~LEVEL: 6~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 400..599:format(string, sizeof(string), "~y~LEVEL: 7~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 600..799:format(string, sizeof(string), "~y~LEVEL: 8~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 800..999:format(string, sizeof(string), "~y~LEVEL: 9~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 1000..1499:format(string, sizeof(string), "~y~LEVEL: 10~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 1500..1999:format(string, sizeof(string), "~y~LEVEL: 11~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 2000..2999:format(string, sizeof(string), "~y~LEVEL: 12~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 3000..3999:format(string, sizeof(string), "~y~LEVEL: 13~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 4000..4999:format(string, sizeof(string), "~y~LEVEL: 14~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 5000..6499:format(string, sizeof(string), "~y~LEVEL: 15~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 6500..7999:format(string, sizeof(string), "~y~LEVEL: 16~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 8000..8999:format(string, sizeof(string), "~y~LEVEL: 17~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 9000..9999:format(string, sizeof(string), "~y~LEVEL: 18~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 10000..14999:format(string, sizeof(string), "~y~LEVEL: 19~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 15000..19999:format(string, sizeof(string), "~y~LEVEL: 20~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 20000..23999:format(string, sizeof(string), "~y~LEVEL: 21~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 24000..26999:format(string, sizeof(string), "~y~LEVEL: 22~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 27000..29999:format(string, sizeof(string), "~y~LEVEL: 23~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
default:format(string, sizeof(string), "~y~LEVEL: MAX~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
}
PlayerTextDrawSetString(playerid, tRang[playerid], string);
}[/pwn]

Добавлено (08.07.2013, 19:55)
---------------------------------------------
сори скрипт криво кинул
[pwn]#include <a_samp>
#include <mxINI>

#define FILTERSCRIPT

new PlayerText: tRang[MAX_PLAYERS];
enum info
{
Kills,
Deaths
}
new Data[MAX_PLAYERS][info];
public OnPlayerConnect(playerid)
{
new name[24],path[64];
GetPlayerName(playerid,name,24);
format(path,64,"%s.ini",name);
if(fexist(path))
{
new iniFile = ini_openFile (path);
ini_getInteger ( iniFile, "Kills", Data[playerid][Kills] );
ini_getInteger ( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile ( iniFile );
}
tRang[playerid] = CreatePlayerTextDraw(playerid, 498.000000, 100.000000, " ");
PlayerTextDrawBackgroundColor(playerid, tRang[playerid], 255);
PlayerTextDrawFont(playerid, tRang[playerid], 2);
PlayerTextDrawLetterSize(playerid, tRang[playerid], 0.290000, 1.300000);
PlayerTextDrawColor(playerid, tRang[playerid], -1);
PlayerTextDrawSetOutline(playerid, tRang[playerid], 1);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new name[24],path[64];
GetPlayerName(playerid,name,24);
format(path,64,"%s.ini",name);
if(fexist(path))
{
new iniFile = ini_openFile (path);
ini_setInteger( iniFile, "Kills", Data[playerid][Kills] );
ini_setInteger( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile( iniFile );
}
else
{
new iniFile = ini_createFile (path);
ini_setInteger( iniFile, "Kills", Data[playerid][Kills] );
ini_setInteger( iniFile, "Deaths", Data[playerid][Deaths] );
ini_closeFile( iniFile );
}
return 1;
}
public OnPlayerSpawn(playerid)
{
PlayerTextDrawShow(playerid, tRang[playerid]);
GetPlayerRang(playerid);
return 1;
}
public OnPlayerUpdate(playerid)
{
GetPlayerRang(playerid);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
Data[playerid][Deaths]++;
if(killerid == 0xFFFF)return true;
Data[killerid][Kills]++;
return 1;
}
stock GetPlayerRang(playerid)
{
new string[256];
switch(Data[playerid][Kills])
{
case 0..19:format(string, sizeof(string), "~y~LEVEL: 1~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 20..49:format(string, sizeof(string), "~y~LEVEL: 2~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 50..74:format(string, sizeof(string), "~y~LEVEL: 3~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 75..99:format(string, sizeof(string), "~y~LEVEL: 4~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 100..199:format(string, sizeof(string), "~y~LEVEL: 5~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 200..399:format(string, sizeof(string), "~y~LEVEL: 6~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 400..599:format(string, sizeof(string), "~y~LEVEL: 7~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 600..799:format(string, sizeof(string), "~y~LEVEL: 8~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 800..999:format(string, sizeof(string), "~y~LEVEL: 9~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 1000..1499:format(string, sizeof(string), "~y~LEVEL: 10~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 1500..1999:format(string, sizeof(string), "~y~LEVEL: 11~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 2000..2999:format(string, sizeof(string), "~y~LEVEL: 12~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 3000..3999:format(string, sizeof(string), "~y~LEVEL: 13~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 4000..4999:format(string, sizeof(string), "~y~LEVEL: 14~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 5000..6499:format(string, sizeof(string), "~y~LEVEL: 15~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 6500..7999:format(string, sizeof(string), "~y~LEVEL: 16~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 8000..8999:format(string, sizeof(string), "~y~LEVEL: 17~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 9000..9999:format(string, sizeof(string), "~y~LEVEL: 18~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 10000..14999:format(string, sizeof(string), "~y~LEVEL: 19~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 15000..19999:format(string, sizeof(string), "~y~LEVEL: 20~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 20000..23999:format(string, sizeof(string), "~y~LEVEL: 21~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 24000..26999:format(string, sizeof(string), "~y~LEVEL: 22~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
case 27000..29999:format(string, sizeof(string), "~y~LEVEL: 23~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
default:format(string, sizeof(string), "~y~LEVEL: MAX~n~~g~K: %d ~r~D: %d",Data[playerid][Kills],Data[playerid][Deaths]);
}
PlayerTextDrawSetString(playerid, tRang[playerid], string);
}[/pwn]

artemganin1999Дата: Вторник, 09.07.2013, 11:20 | Сообщение # 1170
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Здравствуйте, у меня маленькая проблемка, не работает команда /kpk, в чем может быть дело?
Код

//------------------------------------| /kpk  |||-------------------------------
   /*  if (strcmp(cmdtext, "/kpk", true)==0)
     {
   if(IsPlayerConnected(playerid))
   {
             if(gPlayerLogged[playerid] == 0)
          {
              SendClientMessage(playerid, COLOR_GREY, "Вы не вошли.");
              return 1;
          }
             GetPlayerName(playerid, sendername, sizeof(sendername));
             ShowPlayerDialog(playerid,3000,DIALOG_STYLE_LIST,"КПК","[1]Статистика\n[2]Он-лайн\n[3]Стили-Боя\n[4]Скиллы(Навыки по работе)\n[5]GPS-по каботам","Выбор","Отмена");
             format(string, sizeof(string), "%s достал(а) свой КПК.", sendername);
             ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
             return 1;
   }
   return 1;
  }*/

Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Страница 78 из 151«127677787980150151»
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM