[Ajuda] /Q | /Quit
#1

Estou com um problema escroto, queria ver se vocкs conseguiam me ajudar.
Quando algum Jogador do meu Servidor dб /q o "Samp-Server" fecha automaticamente..
Queria saber se alguйm pudesse me ajudar, pois imagina, toda hora que alguйm der /q o Servidor cair...
Obrigado pela Atenзгo!
Reply
#2

Poste sua callback OnPlayerDisconnect.
Reply
#3

Talvez esteja faltando uma pasta de salvamento de dados...
Reply
#4

Public OnPlayerDisconnect

pawn Код:
{
    new arquivo[34], playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername, sizeof(playername));
    format(arquivo, sizeof(arquivo), LEVEL, playername);
    if(DOF2_FileExists(arquivo))
    {
        DOF2_SetInt(arquivo, "Segundos", PlayerUP[playerid][pSegundos]);
        DOF2_SetInt(arquivo, "Level", PlayerUP[playerid][pLevel]);
        DOF2_SaveFile();
    }
    else
    {
        DOF2_CreateFile(arquivo);
        DOF2_SetInt(arquivo, "Segundos", PlayerUP[playerid][pSegundos]);
        DOF2_SetInt(arquivo, "Level", PlayerUP[playerid][pLevel]);
        DOF2_SaveFile();
    }
    SalvarPlayer(playerid);
    if(IsPlayerInAnyVehicle(playerid))
    {
        VeiculoOcupado[GetPlayerVehicleID(playerid)] = false;
    }
    return 1;
}
Reply
#5

De onde vem esse "LEVEL"?

PHP код:
format(arquivosizeof(arquivo), LEVELplayername); 
Reply
#6

pawn Код:
#define LEVEL                  "Level/%s.ini" //PASTA PARA SALVAR O LEVEL.
#define SEGUNDOSLEVEL          3600 //TROQUE PARA OS SEGUNDOS DESEJADOS, 3600 SEGUNDOS = 1 HORA

        new arquivo[34], playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername, sizeof(playername));
    format(arquivo, sizeof(arquivo), LEVEL, playername);
    PlayerUP[playerid][pSegundos] = DOF2_GetInt(arquivo, "Segundos");
    PlayerUP[playerid][pLevel] = DOF2_GetInt(arquivo, "Level");
Reply
#7

Pasta Level existe?
Reply
#8

Nгo, era isto mesmo, ajeitei o level aqui...
Mas se nгo for pedir muito a tua ajuda, os нcones do sistema de casas estгo bugando.
Quando eu entro no Servidor, e tem dono , o pickup fica assim > http://imgur.com/9P72XBl
Quando a casa nгo tem dono o pickup fica assim normal > http://imgur.com/3hLCB4A
Quando alguйm compra casa , fica dois pickups o " AZUL " e o Verde > http://imgur.com/ruAdRcT,fIzAOrT

Se puder ajudar, ficarei grato!
Reply
#9

Quote:
Originally Posted by WKhalifa
Посмотреть сообщение
Nгo, era isto mesmo, ajeitei o level aqui...
Mas se nгo for pedir muito a tua ajuda, os нcones do sistema de casas estгo bugando.
Quando eu entro no Servidor, e tem dono , o pickup fica assim > http://imgur.com/9P72XBl
Quando a casa nгo tem dono o pickup fica assim normal > http://imgur.com/3hLCB4A
Quando alguйm compra casa , fica dois pickups o " AZUL " e o Verde > http://imgur.com/ruAdRcT,fIzAOrT

Se puder ajudar, ficarei grato!
Remova o pickup antigo antes de criar um novo.

Mostre o cуdigo do comando de adquirir a casa.
Reply
#10

Comprar
pawn Код:
if (strcmp("/comprarcasa", cmdtext, true, 10) == 0)
  {
    for(new i; i<MAX_HOUSES; i++)
{
      if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseInfo[i][PickupX], HouseInfo[i][PickupY], HouseInfo[i][PickupZ]))
  {
new Pname[24]; GetPlayerName(playerid, Pname, 24);
for(new S; S<MAX_HOUSES; S++)
{
    if(strcmp(dini_Get("Owned.ini", HouseInfo[S][HouseNames]), Pname)) return SendClientMessage(playerid, 0xF60000AA, "You already have a house!");
}
if(GetPlayerMoney(playerid) < HouseInfo[i][HouseCost]) return SendClientMessage(playerid, 0xF60000AA, "Vocк nгo tem dinheiro suficiente para comprar esta Casa.");
    if(HouseInfo[i][Owned] == 1) return SendClientMessage(playerid, 0xF60000AA, "Esta Casa jб possui um Dono(a).");
    GivePlayerMoney(playerid, - HouseInfo[i][HouseCost]);
    new
    zone[ MAX_ZONE_NAME ]
    ;
    format( msg, sizeof( msg ), "[ INFO ] Jogador {FFFFFF}%s {99FF66}comprou uma Casa {99FF66}localizada em: {FFFFFF}%d", Name( playerid ), zone);
    GetPlayer2DZone( playerid, zone, MAX_ZONE_NAME );
    HouseInfo[i][Owned] = 1;
    DestroyPickup(pickup);
    pickup = CreatePickup(1272, 1, HouseInfo[i][PickupX], HouseInfo[i][PickupY], HouseInfo[i][PickupZ], -1);
    format(HouseInfo[i][HouseOwner], 24, "%s", Pname);
    GetPlayerName(playerid, Pname, 24);
    dini_Set("mhhouses.ini", HouseInfo[i][HouseNames], Pname);
    return 1;
    }
}
SendClientMessage(playerid, 0xF60000AA, "Vocк nгo estб em uma casa.");
    return 1;
  }
Vender
pawn Код:
if (strcmp("/Vendercasa", cmdtext, true, 10) == 0)
  {
    for(new i; i<MAX_HOUSES; i++)
{
      if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseInfo[i][PickupX], HouseInfo[i][PickupY], HouseInfo[i][PickupZ]))
  {
        new Pname[24]; GetPlayerName(playerid, Pname, 24);
        if(strcmp(Pname, HouseInfo[i][HouseOwner])) return SendClientMessage(playerid, 0xF60000AA, "Vocк nгo й dono desta Casa.");
        GivePlayerMoney(playerid, HouseInfo[i][HouseSell]);
         DestroyPickup(pickup);
         pickup = CreatePickup(1273, 1, HouseInfo[i][PickupX], HouseInfo[i][PickupY], HouseInfo[i][PickupZ], 0);
        HouseInfo[i][Owned] = 0;
        format(HouseInfo[i][HouseOwner], 24, "0943jt3u9*egjlfd");
        dini_Unset("Owners.ini", HouseInfo[i][HouseNames]);
        return 1;
}
}
    SendClientMessage(playerid, 0xF60000AA, "Vocк nгo estб em uma Casa.");
return 1;
  }
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)