В общем, ребят, дело в том, что когда игрок логиниться на сервер, ему через раз пишет "server closed the connection" частенько такое бывает.
В чем может быть проблема? Прошу помощи.
OnPlayerConnect ждем
- - - Добавлено - - -
Или у тебя после авторизации?!
- - - Добавлено - - -
Мы не телепаты,опиши все как можно точнее.
Мод на мускуле, именно вот заходишь на сервер, после строчки "Connected. Joining the game...", сразу же "server closed the connection".
Какой паблик дать?
Onplayerconnect пуст.
public OnPlayerConnect(playerid)
{
ClearVars(playerid);
for(new i=0;i<47;i++) Weapons[playerid][i]=0;//îáíóëåíèå
TextDrawShowForPlayer(playerid,Logotype[playerid]);
BanAdmin[playerid] = 0;
timereg[playerid] = 30;
TempAdmin[playerid] = false;
mask[playerid] = 0;
heal[playerid] = 0;
plafk[playerid] = -2;
new string[256];
f(string,"{F6FE01}* %s[ID:%d] {0EFE01}àâòîðèçîâàëñÿ íà ñåðâåðå",sendername(playerid),playerid);
SendZax(-1,string);
PlayerInfo[playerid][pNick] = sendername(playerid);
return true;
}
Смотри и проверяй все свои функции Kick, которые срабатывают ДО авторизации. Это может быть античит не верно сделанный, к примеру..
Valera_Trefilov
21.10.2014, 17:47
PlayerInfo[playerid][pNick] = sendername(playerid);
что за бред?
Используй лучше вот так
strmid(PlayerInfo[playerid][pNick], sendername(playerid), 0, strlen(sendername(playerid), 24);
Все случаи использования Kick в студию.
Все случаи использования Kick в студию.
forward KickTimer(playerid);
stock GKick(playerid, time = 150)
{
if(GetPVarInt(playerid, "Kick") == -1) Kick(playerid);
else if(!GetPVarInt(playerid, "Kick")) SetPVarInt(playerid, "Kick", SetTimerEx("KickTimer", time, 0, "d", playerid));
else
{
KillTimer(GetPVarInt(playerid, "Kick"));
SetPVarInt(playerid, "Kick", -1);
GKick(playerid);
}
return true;
}
public OnPlayerSpawn(playerid)
{
SetPVarInt(playerid, "NoAB", 1);
if(gLogAcc[playerid] == false)return GKick(playerid);
TextDrawHideForPlayer(playerid,Speedo[playerid][0]);
TextDrawHideForPlayer(playerid,Speedo[playerid][1]);
TextDrawHideForPlayer(playerid,Speedo[playerid][2]);
TextDrawHideForPlayer(playerid,Speedo[playerid][3]);
TextDrawHideForPlayer(playerid,Speedo[playerid][4]);
TextDrawHideForPlayer(playerid,StartSkin[playerid][0]);
TextDrawHideForPlayer(playerid,StartSkin[playerid][1]);
TextDrawHideForPlayer(playerid,StartSkin[playerid][2]);
TextDrawHideForPlayer(playerid,StartSkin[playerid][3]);
CancelSelectTextDraw(playerid);
DeletePVar(playerid,"ShowTD");
SetPlayerSkin(playerid,GetPVarInt(playerid,"startskin"));
TogglePlayerControllable(playerid, 1);
SetPlayerScore(playerid,PlayerInfo[playerid][pKills]);
SetPlayerSpawn(playerid);
plafk[playerid] = 0;
return true;
}
stock ShowPlayerBanInfo(playerid)
{
new string[256],str[128];
f(str, ""c_Kick"* Àêêàóíò ïîä íèêîì %s çàáàíåí.\n\n",sendername(playerid));
strcat(string,str);
f(str, "* Íèê àäìèíèñòðàòîðà: \t%s\n",PlayerInfo[playerid][pBanAdmin]);
strcat(string,str);
f(str, "* Ïðè÷èíà:\t\t\t%s\n",PlayerInfo[playerid][pBanReason]);
strcat(string,str);
f(str, "* Äàòà áàíà:\t\t\t%s\n",PlayerInfo[playerid][pBanDate]);
strcat(string,str);
f(str, "* Äàòà ðàçáàíà:\t\t\t%s",date("%dd.%mm.%yyyy",PlayerInfo[playerid][pBanTime339]));
strcat(string,str);
ShowDialog(playerid,dg_iBan,DIALOG_STYLE_MSGBOX,""c_Yellow"Banned",string,"Ok","");
GKick(playerid);
}
public OnPlayerSpawn(playerid)
{
SetPVarInt(playerid, "NoAB", 1);
if(gLogAcc[playerid] == false)return GKick(playerid);
case dg_Log:
{
gPlayerLogged[playerid] = true;
if(!response)return GKick(playerid);
if(!strlen(inputtext))return ShowDialog(playerid,dg_Log,DIALOG_STYLE_PASSWORD,""c_Blue"• DGO DM •","{FFFFFF}Добро пожаловать на сервер "c_Yellow"DGO DM\n{FFFFFF}Ваш ник "c_Green"зарегистрирован{FFFFFF} на сервере\n\nВведите пароль:","Войти","Отмена");
OnPlayerLogin(playerid,(inputtext));
SetPVarString(playerid, "Pass", inputtext);
gPlayerLogged[playerid] = true;
if(gLogAcc[playerid] == false)return GKick(playerid);
У тебя переменные различаются,исправь.
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot