PDA

Просмотр полной версии : [Вопрос] Нужна ваша помощь.



Dimon_Fanat
01.06.2014, 15:45
Помогите пожалуйста как сделать что при заходе на сервер, не писало данной команды не существует после /aduty

Вот код:

if(Player[playerid][pAdmin] != 0)
{
SendClientMessage(playerid,COLOR_YELLOW,"Для получения администраторских прав, используй команду ''/aduty''");
}
SetPlayerScore(playerid, Player[playerid][pLevel]);
TextDrawShowForPlayer(playerid,TimeDisp);
SetPlayerColor(playerid,0xFFFFFF80);
TeleportTime[playerid] = 10;
DisablePlayerCheckpoint(playerid);
//------------------------------------------------------------------------------
if(Player[playerid][pAdmin] == 1) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 2) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 3) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 4) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 5) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 6) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 7) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 8) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 9) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 10) adminpanel[playerid] = "1111";
else if(Player[playerid][pAdmin] == 11) adminpanel[playerid] = "1111";
//------------------------------------------------------------------------------
/*if(Player[playerid][pAdmin] > 0)
{
OnPlayerSpawn(playerid),OnPlayerSpawn(playerid);
}*/
//ShowPlayerDialog(playerid,DIALOG_ADMINPANEL,DIALOG_STYLE_INPUT,"{33CCFF}Админ-Панель","{FFFFFF}Введите административный пароль","Принять","");
SpawnPlayer(playerid),OnPlayerSpawn(playerid);
return true;
}
else
{
ErrorPas[playerid]++;
format(string, sizeof(string), "[ОШИБКА] {FFFFFF}Неверный пароль. Осталось {FF0000}%d {FFFFFF}попыток.", 3-ErrorPas[playerid]);
SendClientMessage(playerid,COLOR_RED,string);
if(ErrorPas[playerid] >= 3)
{
Kick(playerid);
format(string, sizeof(string), "%s[%d] кикнут(а) с сервера. Причина: 3 неверных ввода пароля", Player[playerid][pName],playerid);
ABroadCast(COLOR_YELLOW,string,1);
return 1;
}
new dialog[512+MAX_PLAYER_NAME];
format(dialog, sizeof(dialog),"{FFE4B5}Приветствуем тебя, {8C60C3}%s\n\
{FFE4B5}\n\
{FFE4B5} Сервер: {FF0000}[RPG] SAMP-City: ORIGINAL\n\
{FFE4B5} Игровой мод: {006400}"vGame"\n\
{FFE4B5} Версия клиента: {006400}SAMP 0.3x R1-2\n\
{FFE4B5} Официальный сайт: {8C60C3}www.samp-city.com\n\
{FFE4B5}\n\
{FFE4B5}Аккаунт уже {006400}зарегистрирован {FFE4B5}на сервере.\n\
{FFE4B5}\n\
{FFE4B5}Введите пароль и нажми ''Войти''",Player[playerid][pName]);
ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "{33ccff}Авторизация.", dialog, "Войти", "Отмена");
}
return false;
}

А вот что полуется и что нужно исправить.

http://rghost.ru/56059090

Если не открылась фотография вот
http://rghost.ru/56059090.view [не реклама].

wAx
01.06.2014, 17:34
В конце /aduty поставь return 1;

Dimon_Fanat
01.06.2014, 20:30
В конце /aduty поставь return 1;

Я так пробывал помогло но потом при входе на сервер при авторизации когда я авторизуюсь надо нажимпть spawn или не как не попадешь на сервер.

DeimoS
01.06.2014, 21:00
Так покажите команды, при которых появляется сообщение

Dimon_Fanat
01.06.2014, 21:17
Так покажите команды, при которых появляется сообщение

Какие именно?

Flime
01.06.2014, 21:47
Какие именно?
Скиньте код, где у вас данное сообщение "Данной команды не существует"

Dimon_Fanat
01.06.2014, 22:00
Скиньте код, где у вас данное сообщение "Данной команды не существует"
Вот последняя команда перед следующим пабликом.

if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
return SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список доступных команд: {00FF00}''/kpk''{FFFFFF}.");
}


public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
//for(new i = 0; i < MAX_PLAYERS; i++)
foreach(new i: Player)
{
if(Spectate[i] == playerid && SpecEnable[i] == 1)
{
PlayerSpectateVehicle(i, GetPlayerVehicleID(playerid));
}

L0ndl3m
01.06.2014, 22:21
return 1;

В конец команды поставьте. После использования команды должно возвращаться какое-либо значение, если нет возврата - будут выполняться дальнейшие проверки итого дойдём до конца паблика, который возвращает значение - отправленное сообщение игроку.

Flime
01.06.2014, 22:23
if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
return true;
}
return SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список доступных команд: {00FF00}''/kpk''{FFFFFF}.");
}

или


if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
else return SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список доступных команд: {00FF00}''/kpk''{FFFFFF}.");
}

Dimon_Fanat
01.06.2014, 22:39
return 1;

В конец команды поставьте. После использования команды должно возвращаться какое-либо значение, если нет возврата - будут выполняться дальнейшие проверки итого дойдём до конца паблика, который возвращает значение - отправленное сообщение игроку.
А куда именно встовлять?

- - - Добавлено - - -

Вообщем я когда лазил в моде пробывал подставить после авторизации return 1 true или false вроде помогало но надо было нажмимать кнопку spawn чтоб войти. вообщем я запутался уже.

- - - Добавлено - - -




if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
return true;
}
return SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список доступных команд: {00FF00}''/kpk''{FFFFFF}.");
}

или


if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
else return SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список доступных команд: {00FF00}''/kpk''{FFFFFF}.");
}


А это к сажилению не помогло.

Nurick
01.06.2014, 22:46
Скинь свой файл pwn

Dimon_Fanat
01.06.2014, 23:09
Я немного разобрался это связано с авторизацией после того как авторизоватся на сервере сразу же вылетают эти ошибки.

- - - Добавлено - - -


Скинь свой файл pwn

скинь скайп.

DeimoS
02.06.2014, 04:56
Я немного разобрался это связано с авторизацией после того как авторизоватся на сервере сразу же вылетают эти ошибки.

У вас просто не вставлены возвраты в командах, вам же говорят... :stop:
Покажите весь коллбэк с командами

wAx
02.06.2014, 06:39
У вас просто не вставлены возвраты в командах, вам же говорят... :stop:
Покажите весь коллбэк с командами

Щас он весь свой колбэк с 25.000 строк скинет сюда =)

DeimoS
02.06.2014, 11:57
Щас он весь свой колбэк с 25.000 строк скинет сюда =)

pastebin для слабаков?
Ну наше дело предложить, а ваше... Можете гадать и дальше

Dimon_Fanat
02.06.2014, 14:48
Кто поможет я скину мод pawn кто сможет сделать?

Osetin
02.06.2014, 14:59
Кто поможет я скину мод pawn кто сможет сделать?


У вас просто не вставлены возвраты в командах, вам же говорят... :stop:
Покажите весь коллбэк с командами

http://pastebin.com - сюда закиньте весь коллбэк с командами и ссылку скиньте

Dimon_Fanat
02.06.2014, 15:13
http://pastebin.com - сюда закиньте весь коллбэк с командами и ссылку скиньте

Может лучьше я кину pawn? я в этом не разбераюсь. коллбэке

DeimoS
02.06.2014, 16:07
Может лучьше я кину pawn? я в этом не разбераюсь. коллбэке

Я бы советовал тогда изучить сначала язык. Или ж забыть о создании сервера. Без скриптера вы свой проект не сможете долго держать в живом состоянии. И очередной говнокод в паблик тоже лить не стоит.
Ну заливайте pwn файл на rghost.ru и кидайте ссылку

Dimon_Fanat
02.06.2014, 16:26
Я бы советовал тогда изучить сначала язык. Или ж забыть о создании сервера. Без скриптера вы свой проект не сможете долго держать в живом состоянии. И очередной говнокод в паблик тоже лить не стоит.
Ну заливайте pwn файл на rghost.ru и кидайте ссылку

Я конешно не спец в pawnо но некоторое знаю ну и учусь по тихоньку вот если уже совсем сложно то пишу сюда.
http://rghost.ru/56086518

A N D R E Y
02.06.2014, 16:56
Я конешно не спец в pawnо но некоторое знаю ну и учусь по тихоньку вот если уже совсем сложно то пишу сюда.
http://rghost.ru/56086518
Не пойму что вы там учите, НО, Pawno - это программа или-же тестовый редактор для написания кода со встроенным компилятором. А нормальные люди изучают Pawn, вообще сверху почитайте о чем наш портал...

Dimon_Fanat
02.06.2014, 16:58
Не пойму что вы там учите, НО, Pawno - это программа или-же тестовый редактор для написания кода со встроенным компилятором. А нормальные люди изучают Pawn, вообще сверху почитайте о чем наш портал...
Все рады я сюда написал потому что у меня не получается.

Osetin
02.06.2014, 17:37
if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
else SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список достуаных команд: {00FF00}''/kpk''{FFFFFF}.");
return 1;
}

В команду засунули и удивляетесь почему так?

P.S Да, и перед тем как выкладывать мод, хоть бы стерли MySQL данные)

Dimon_Fanat
02.06.2014, 17:41
if(strcmp(cmd, "/respstreet", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid, 10.0,-3443.4700,933.0100,1036.1500) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, 2689.2000,-1695.8700,9.5700);
SetVehicleZAngle(tmpcar, 45);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0,2689.2000,-1695.8700,9.5700) && GetPlayerState(playerid) == 2)
{
new tmpcar = GetPlayerVehicleID(playerid);
SetVehiclePos(tmpcar, -3443.4700,933.0100,1036.1500);
SetVehicleZAngle(tmpcar, 5);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
else SendClientMessage(playerid,COLOR_WHITE, "Данная команда отсутствует на сервере, список достуаных команд: {00FF00}''/kpk''{FFFFFF}.");
return 1;
}

В команду засунули и удивляетесь почему так?

Все спасибо проблема уже решена. но все равно спасибо что помогли.

Osetin
02.06.2014, 17:46
Все спасибо проблема уже решена. но все равно спасибо что помогли.

Не за что, в след.раз смотрите куда вставляете код.

Закрыто.