Salvar Objetos. -
PowerEvolve - 11.05.2017
Olб fуrum..
Eu estava fazendo meu projeto >>>projeto<<< e me veio uma duvida.
No meu gm tem um sistema de criar casas, crafting table etc, o problema й, quando o servidor reiniciar tudo construнdo pelos players in-game irб sumir.. Eu queria a ajuda de vocкs para salvar esses objetos.
Obrigado!
Re: Salvar Objetos. -
ViniBorn - 11.05.2017
A ideia й semelhante a conta dos jogadores, mas em vez de level, adminlevel, etc, vocк vai salvar o modelo do objeto e a posiзгo
Re: Salvar Objetos. -
PowerEvolve - 11.05.2017
Quote:
Originally Posted by ViniBorn
A ideia й semelhante a conta dos jogadores, mas em vez de level, adminlevel, etc, vocк vai salvar o modelo do objeto e a posiзгo
|
Poderia passar um exemplo?
Re: Salvar Objetos. -
PowerEvolve - 12.05.2017
Quote:
Originally Posted by Carlos001
PHP код:
#define MAX_BASES 10
enum BaseInfo
{
Dono[MAX_PLAYER_NAME],
Existe,
ObjectB,
Float: PosX,
Float: PosY,
Float: PosZ,
Float: RX,
Float: RY,
Float: RZ
}
new Base[MAX_BASES][BaseInfo];
CMD:criarbase(playerid, params[])
{
new Float:X, Float:Y, Float:Z, Float: A;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, A);
for(new id; id < MAX_BASES; id++)
{
Base[id][Dono] = ...;
Base[id][Existe] = 1;
Base[id][PosX] = X;
Base[id][PosY] = Y;
Base[id][PosZ] = Z - 0.90;
Base[id][RZ] = A + 180.0;
Base[id][ObjectB] = CreateDynamicObject(Object, Base[id][PosX], Base[id][PosY], Base[id][PosZ], Base[id][RX], Base[id][RY], Base[id][RZ]);
SendClientMessage(playerid, -1, "Base criada com sucesso");
// ...
}
return 1;
}
Depois й quase a mesma coisa que salvar as Informaзхes de um Jogador, vocк pega as Informaзхes das Variбveis e Salva, pra carregar quase a mesma coisa Tmb, vocк pega os dados das Variбveis e cria os Objetos Novamente, esse foi um Exemplo para salvar os objetos das bases, Os outros Objetos e a mesma coisa...
|
Entendi mais ou menos, eu sei salvar coisas do player, level, money, ultimas coordenadas, mas nao entendi como salvar isso!
Re: Salvar Objetos. -
Scorpion659 - 12.05.2017
Quote:
Originally Posted by PowerEvolve
Entendi mais ou menos, eu sei salvar coisas do player, level, money, ultimas coordenadas, mas nao entendi como salvar isso!
|
cada vez que alguem criar uma casa, vc coloca pra criar um arquivo com o modelo, dono, localizaзгo, entendeu? tipo, cria uma pasta em scriptfiles com o nome de casas e dps faz pra criar um arquivo pra cada casa, e defina com o nome, tipo casa(nomedocara) ou casa 1, 2, etc.
assim, quando a gm for reiniciada ele lerб todos os arquivos e criarб as casas, ou melhor, vc pode deixar um limite de 1 casa por player, assim, vc salva na conta do cara a casa, se ele tiver uma casa, defina na conta dele o modelo e posiзгo
Re: Salvar Objetos. -
PowerEvolve - 12.05.2017
Quote:
Originally Posted by Scorpion659
cada vez que alguem criar uma casa, vc coloca pra criar um arquivo com o modelo, dono, localizaзгo, entendeu? tipo, cria uma pasta em scriptfiles com o nome de casas e dps faz pra criar um arquivo pra cada casa, e defina com o nome, tipo casa(nomedocara) ou casa 1, 2, etc.
assim, quando a gm for reiniciada ele lerб todos os arquivos e criarб as casas, ou melhor, vc pode deixar um limite de 1 casa por player, assim, vc salva na conta do cara a casa, se ele tiver uma casa, defina na conta dele o modelo e posiзгo 
|
Amigo o meu problema й, usando essa base:
PHP код:
#define MAX_BASES 10
enum BaseInfo
{
Dono[MAX_PLAYER_NAME],
Existe,
ObjectB,
Float: PosX,
Float: PosY,
Float: PosZ,
Float: RX,
Float: RY,
Float: RZ
}
new Base[MAX_BASES][BaseInfo];
CMD:criarbase(playerid, params[])
{
new Float:X, Float:Y, Float:Z, Float: A;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, A);
for(new id; id < MAX_BASES; id++)
{
Base[id][Dono] = ...;
Base[id][Existe] = 1;
Base[id][PosX] = X;
Base[id][PosY] = Y;
Base[id][PosZ] = Z - 0.90;
Base[id][RZ] = A + 180.0;
Base[id][ObjectB] = CreateDynamicObject(Object, Base[id][PosX], Base[id][PosY], Base[id][PosZ], Base[id][RX], Base[id][RY], Base[id][RZ]);
SendClientMessage(playerid, -1, "Base criada com sucesso");
// ...
}
return 1;
}
Eu nгo sei como salvar ela entende? Eu nгo sei oq escrever para salvar o id do objeto muito menos a coordenada onde ela estб, compreende?
Eu simplesmente nгo sei como salvar!
Re: Salvar Objetos. -
Franklin0180 - 12.05.2017
Quote:
Originally Posted by PowerEvolve
Amigo o meu problema й, usando essa base:
PHP код:
#define MAX_BASES 10
enum BaseInfo
{
Dono[MAX_PLAYER_NAME],
Existe,
ObjectB,
Float: PosX,
Float: PosY,
Float: PosZ,
Float: RX,
Float: RY,
Float: RZ
}
new Base[MAX_BASES][BaseInfo];
CMD:criarbase(playerid, params[])
{
new Float:X, Float:Y, Float:Z, Float: A;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerFacingAngle(playerid, A);
for(new id; id < MAX_BASES; id++)
{
Base[id][Dono] = ...;
Base[id][Existe] = 1;
Base[id][PosX] = X;
Base[id][PosY] = Y;
Base[id][PosZ] = Z - 0.90;
Base[id][RZ] = A + 180.0;
Base[id][ObjectB] = CreateDynamicObject(Object, Base[id][PosX], Base[id][PosY], Base[id][PosZ], Base[id][RX], Base[id][RY], Base[id][RZ]);
SendClientMessage(playerid, -1, "Base criada com sucesso");
// ...
}
return 1;
}
Eu nгo sei como salvar ela entende? Eu nгo sei oq escrever para salvar o id do objeto muito menos a coordenada onde ela estб, compreende?
Eu simplesmente nгo sei como salvar!
|
Como você pretende criar o projeto sem saber funçoes de salvamento?
Meio tenso!
Re: Salvar Objetos. -
Scorpion659 - 12.05.2017
Olha, sei que estб errado oque eu fiz, n salvei rotaзгo, o playerid vai dar errado, etc, etc, mas a logica na minha opiniгo й essa: (mas espera pessoas que saibam programar, mas creio que essa logica de certo)(sei tb q nesse coisa q criei, cada player sу poderб ter uma casa)
PHP код:
enum BaseInfo
{
Dono,
ObjectB,
Float: PosX,
Float: PosY,
Float: PosZ,
Float: RX,
Float: RY,
Float: RZ
}
new Base[MAX_PLAYERS][BaseInfo], string[MAX_PLAYERS][128];
new nome[MAX_PLAYERS][MAX_PLAYER_NAME];
CMD:criarbase(playerid)
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
GetPlayerName(playerid, nome[playerid], MAX_PLAYER_NAME);
format(string[playerid], 128, "Casas/casa_%s.ini", nome[playerid]);
if(!DOF2_FileExists(string[playerid])){
DOF2_CreateFile(string[playerid]);
DOF2_SetString(string[playerid], "Dono", nome[playerid]);
DOF2_SetInt(string[playerid], "ObjectB", 16146);
DOF2_SetFloat(string[playerid], "PosX", X);
DOF2_SetFloat(string[playerid], "PosY", Y);
DOF2_SetFloat(string[playerid], "PosZ", Z);
DOF2_SaveFile();
criarcasa(playerid);
}else{SendClientMessage(playerid, 0xFF0000, "Vocк jб tem uma casa :)");}
return 1;
}
stock criarcasa(playerid)
{
Base[playerid][Dono] = DOF2_GetString( string[playerid], "Dono" );
Base[playerid][ObjectB] = DOF2_GetInt( string[playerid], "ObjectB" );
Base[playerid][PosX] = DOF2_GetFloat( string[playerid], "PosX" );
Base[playerid][PosY] = DOF2_GetFloat( string[playerid], "PosY" );
Base[playerid][PosZ] = DOF2_GetFloat( string[playerid], "PosZ" );
CreateDynamicObject(Base[playerid][ObjectB], Base[playerid][PosX], Base[playerid][PosY], Base[playerid][PosZ], 0.0, 0.0, 0.0);
return 1;
}
Re: Salvar Objetos. - Carlos001 - 12.05.2017
@PowerEvolve Me procure no Skype irei estar te passando o Script pronto.. Skype: blu.blu35
Re: Salvar Objetos. -
PowerEvolve - 12.05.2017
Quote:
Originally Posted by Carlos001
@PowerEvolve Me procure no Skype irei estar te passando o Script pronto.. Skype: blu.blu35
|
@Carlos001 Mandei a solicitaзгo!!