[Pedido] Salvar X, Y, Z ; E quando entrar se teleportado
#1

Olб Internautas !

Titulo resume o que quero tentar fazer .
A cada passo que o jogador da, salvar a ultima coordenada que ele se encontrava antes de sair do servidor, e quando ele logar ser automaticamente teleportado para sua ultima posiзгo X, Y, Z . Sei que й possнvel, mas como Se alguem poder me ajudar com cуdigos, tutoriais vai me enviando, estou fazendo pesquisas aqui tambйm para melhor entendimento . Mas quero ajuda a mais.. ( A de vocкs )

@EDIT

Achei um tutorial que parece ser bem funcional . Quem tiver interessado o link segue abaixo

Tutorial
Reply
#2

Quote:
Originally Posted by Alwe
Посмотреть сообщение
Olб Internautas !

Titulo resume o que quero tentar fazer .
A cada passo que o jogador da, salvar a ultima coordenada que ele se encontrava antes de sair do servidor, e quando ele logar ser automaticamente teleportado para sua ultima posiзгo X, Y, Z . Sei que й possнvel, mas como Se alguem poder me ajudar com cуdigos, tutoriais vai me enviando, estou fazendo pesquisas aqui tambйm para melhor entendimento . Mas quero ajuda a mais.. ( A de vocкs )

@EDIT

Achei um tutorial que parece ser bem funcional . Quem tiver interessado o link segue abaixo

Tutorial
Tem certeza que deseja salvar a cada passo dado? Isso com certeza daria lag...simplesmente salve ao player desconectar.
Reply
#3

Bom eu fiz este cуdigo do jeito que vocк especificou no tнtulo, Salvamento da posiзгo do player quando ele se desconectar e Teleporte para a posiзгo antiga do player assim que ele se conectar.
Basta apenas anexa-lo em seu gamemode.


Ajudei? +Rep

No topo do gamemode:
PHP код:
#include <dini> /*--- Include de Salvamento de Dados ---*/
#define PASTA_CONTAS    "/Contas/%s.ini" /*--- Definindo em uma vбriavel o local da pasta das contas dos players ---*/ 
Na public OnPlayerDisconnect
PHP код:
public OnPlayerDisconnect(playeridreason)
{
    new 
Float:xFloat:yFloat:zFloat:anglefile[30], aname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridaname,sizeof(aname));
    
format(filesizeof(file), PASTA_CONTASaname);
    
GetPlayerPos(playeridxyz);
    
GetPlayerFacingAngle(playeridangle);
    
dini_FloatSet(file"UltimaPosicaoX"x);
    
dini_FloatSet(file"UltimaPosicaoY"y);
    
dini_FloatSet(file"UltimaPosicaoZ"z);
    
dini_FloatSet(file"UltimoAngulo"angle);
    return 
1;

Na public OnPlayerSpawn(playerid)
PHP код:
public OnPlayerSpawn(playerid)
{
    new 
file[30], aname[MAX_PLAYER_NAME];
    
GetPlayerName(playeridaname,sizeof(aname));
    
format(filesizeof(file), PASTA_CONTASaname);
    
SetPlayerPos(playeriddini_Float(file"UltimaPosicaoX"), dini_Float(file"UltimaPosicaoY"), dini_Float(file"UltimaPosicaoZ"));
    
SetPlayerFacingAngle(playeriddini_Float(file"UltimoAngulo"));
    return 
1;

Aonde ficarб salvo e como irб ficar no arquivo do player.
Reply
#4

Nгo й necessбrio ficar salvando os ъltimos passos do jogador, lol.

Й sу salvar quando ele sair do servidor. Teste esse do seu madruga, caso nгo funcione, eu crio um aqui.
Reply
#5

Exagero na string file, sendo que o mбximo de nome й 24 caracteres.
Reply
#6

Quote:
Originally Posted by xCR7
Посмотреть сообщение
Exagero na string file, sendo que o mбximo de nome й 24 caracteres.
Fiz correndo uma base mais complexa para ele, mas jб que vocк alertou o exagero @Edit.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)