CARREGAR_CONTA(playerid) { format(Conta_txt, sizeof(Conta_txt), PASTA_CONTAS, GetPlayerNome(playerid)); pInfo[playerid][Admin_Nivel] = DOF2_GetInt(Conta_txt, "Administrador"); pInfo[playerid][Skin] = DOF2_GetInt(Conta_txt, "Skin"); pInfo[playerid][Dinheiro] = DOF2_GetInt(Conta_txt, "Dinheiro"); pInfo[playerid][Nivel] = DOF2_GetInt(Conta_txt, "Nivel"); pInfo[playerid][Organizacao] = DOF2_GetInt(Conta_txt, "Organizacao"); pInfo[playerid][Cargo] = DOF2_GetInt(Conta_txt, "Cargo"); pInfo[playerid][Interior] = DOF2_GetInt(Conta_txt, "Interior"); pInfo[playerid][Mundo] = DOF2_GetInt(Conta_txt, "Mundo"); SetPlayerSkin(playerid, pInfo[playerid][Skin]); SetPlayerScore(playerid, pInfo[playerid][Nivel]); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetPlayerInterior(playerid, pInfo[playerid][Interior]); SetPlayerVirtualWorld(playerid, pInfo[playerid][Mundo]); pInfo[playerid][Logado] = true; }
meu sistema de registro / login ta quase 100%. sу tem uma coisa, quando o player entra no servidor o dinheiro dele dobra '-'
kkkkk exemplo, se eu sair do servidor com 5000 de money, quando voltar vou ter 10k. procurei pro GivePlayerMoney no GM, sу achei no cmd /dargrana e na stock salvamento Code:
CARREGAR_CONTA(playerid) { format(Conta_txt, sizeof(Conta_txt), PASTA_CONTAS, GetPlayerNome(playerid)); pInfo[playerid][Admin_Nivel] = DOF2_GetInt(Conta_txt, "Administrador"); pInfo[playerid][Skin] = DOF2_GetInt(Conta_txt, "Skin"); pInfo[playerid][Dinheiro] = DOF2_GetInt(Conta_txt, "Dinheiro"); pInfo[playerid][Nivel] = DOF2_GetInt(Conta_txt, "Nivel"); pInfo[playerid][Organizacao] = DOF2_GetInt(Conta_txt, "Organizacao"); pInfo[playerid][Cargo] = DOF2_GetInt(Conta_txt, "Cargo"); pInfo[playerid][Interior] = DOF2_GetInt(Conta_txt, "Interior"); pInfo[playerid][Mundo] = DOF2_GetInt(Conta_txt, "Mundo"); SetPlayerSkin(playerid, pInfo[playerid][Skin]); SetPlayerScore(playerid, pInfo[playerid][Nivel]); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetPlayerInterior(playerid, pInfo[playerid][Interior]); SetPlayerVirtualWorld(playerid, pInfo[playerid][Mundo]); pInfo[playerid][Logado] = true; } e agora zй ? ta dobrando como saporra |
meu sistema de registro / login ta quase 100%. sу tem uma coisa, quando o player entra no servidor o dinheiro dele dobra '-'
kkkkk exemplo, se eu sair do servidor com 5000 de money, quando voltar vou ter 10k. procurei pro GivePlayerMoney no GM, sу achei no cmd /dargrana e na stock salvamento Code:
CARREGAR_CONTA(playerid) { format(Conta_txt, sizeof(Conta_txt), PASTA_CONTAS, GetPlayerNome(playerid)); pInfo[playerid][Admin_Nivel] = DOF2_GetInt(Conta_txt, "Administrador"); pInfo[playerid][Skin] = DOF2_GetInt(Conta_txt, "Skin"); pInfo[playerid][Dinheiro] = DOF2_GetInt(Conta_txt, "Dinheiro"); pInfo[playerid][Nivel] = DOF2_GetInt(Conta_txt, "Nivel"); pInfo[playerid][Organizacao] = DOF2_GetInt(Conta_txt, "Organizacao"); pInfo[playerid][Cargo] = DOF2_GetInt(Conta_txt, "Cargo"); pInfo[playerid][Interior] = DOF2_GetInt(Conta_txt, "Interior"); pInfo[playerid][Mundo] = DOF2_GetInt(Conta_txt, "Mundo"); SetPlayerSkin(playerid, pInfo[playerid][Skin]); SetPlayerScore(playerid, pInfo[playerid][Nivel]); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetPlayerInterior(playerid, pInfo[playerid][Interior]); SetPlayerVirtualWorld(playerid, pInfo[playerid][Mundo]); pInfo[playerid][Logado] = true; } e agora zй ? ta dobrando como saporra |
Verifica se o dinheiro estб sendo salvo corretamente no arquivo. E use um ResetPlayerMoney antes do GivePlayerMoney.
|
public OnPlayerConnect(playerid) { TextDrawShowForPlayer(playerid, ImagemEntrada); ResetPlayerMoney(playerid); CARREGAR_CONTA(playerid); return 1; } public OnPlayerDisconnect(playerid, reason) { SALVAR_CONTA(playerid); ResetPlayerMoney(playerid); new xuxu[80]; format(xuxu, sizeof(xuxu), "O jogador {FFF0FF}%s {FFFFFF}saiu do servidor", GetPlayerNome(playerid)); SendClientMessageToAll( Branco , xuxu); return 1; } public OnPlayerRequestSpawn(playerid) return IsPlayerLogged(playerid); IsPlayerLogged(playerid) { if(pInfo[playerid][Logado] == true) { // SetSpawnInfo(playerid, pInfo[playerid][Organizacao], pInfo[playerid][Skin], pInfo[playerid][Pos_Player][0], pInfo[playerid][Pos_Player][1],pInfo[playerid][Pos_Player][2],pInfo[playerid][Pos_Player][3], 0, 0, 0, 0, 0, 0 ); SetSpawnInfo(playerid, pInfo[playerid][Organizacao], pInfo[playerid][Skin],2192.3462,1676.3215,12.3672, 3672, 0, 0, 0, 0, 0, 0 ); SetPlayerInterior(playerid, 0); ResetPlayerMoney(playerid); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetCameraBehindPlayer(playerid); SpawnPlayer(playerid); } return 1; } public OnPlayerRequestClass(playerid, classid) { if(IsPlayerLogged(playerid)) { SpawnPlayer(playerid); return 1; } return 0; }
public OnPlayerRequestSpawn(playerid) return IsPlayerLogged(playerid);
IsPlayerLogged(playerid) { if(pInfo[playerid][Logado] == true) { // SetSpawnInfo(playerid, pInfo[playerid][Organizacao], pInfo[playerid][Skin], pInfo[playerid][Pos_Player][0], pInfo[playerid][Pos_Player][1],pInfo[playerid][Pos_Player][2],pInfo[playerid][Pos_Player][3], 0, 0, 0, 0, 0, 0 ); SetSpawnInfo(playerid, pInfo[playerid][Organizacao], pInfo[playerid][Skin],2192.3462,1676.3215,12.3672, 3672, 0, 0, 0, 0, 0, 0 ); SetPlayerInterior(playerid, 0); ResetPlayerMoney(playerid); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetCameraBehindPlayer(playerid); SpawnPlayer(playerid); } return 1; } |
CARREGAR_CONTA(playerid) { format(Conta_txt, sizeof(Conta_txt), PASTA_CONTAS, GetPlayerNome(playerid)); pInfo[playerid][Admin_Nivel] = DOF2_GetInt(Conta_txt, "Administrador"); pInfo[playerid][Skin] = DOF2_GetInt(Conta_txt, "Skin"); pInfo[playerid][Dinheiro] = DOF2_GetInt(Conta_txt, "Dinheiro"); pInfo[playerid][Nivel] = DOF2_GetInt(Conta_txt, "Nivel"); pInfo[playerid][Organizacao] = DOF2_GetInt(Conta_txt, "Organizacao"); pInfo[playerid][Cargo] = DOF2_GetInt(Conta_txt, "Cargo"); pInfo[playerid][Interior] = DOF2_GetInt(Conta_txt, "Interior"); pInfo[playerid][Mundo] = DOF2_GetInt(Conta_txt, "Mundo"); SetPlayerSkin(playerid, pInfo[playerid][Skin]); SetPlayerScore(playerid, pInfo[playerid][Nivel]); GivePlayerMoney(playerid, pInfo[playerid][Dinheiro]); SetPlayerInterior(playerid, pInfo[playerid][Interior]); SetPlayerVirtualWorld(playerid, pInfo[playerid][Mundo]); pInfo[playerid][Logado] = true; }
SetPlayerMoney(playerid, pInfo[playerid][Dinheiro]);