22.02.2015, 16:35
(
Последний раз редактировалось MarlboroBr; 05.03.2015 в 16:14.
)
Pessoal, um chegado ai do fуrum me ajudou a criar um sistema que eu uso um comando e muda o nome da casa e o нcone.
Sу que quando eu reinicio o CMD do server, o нcone e o nome sai.
O Leilгo ainda fica, a pessoa nгo consegue comprar a casa sem eu retirar do leilгo. Mais o ICONE e o nome LEILГO sai apos reiniciar.
Fica assim de boa, atй eu reiniciar o server:
Comandos para COMPRAR/VENDER a casa:
Para COLOCAR/RETIRAR ela do leilгo:
Sу que quando eu reinicio o CMD do server, o нcone e o nome sai.
O Leilгo ainda fica, a pessoa nгo consegue comprar a casa sem eu retirar do leilгo. Mais o ICONE e o nome LEILГO sai apos reiniciar.
Fica assim de boa, atй eu reiniciar o server:
Comandos para COMPRAR/VENDER a casa:
PHP код:
else if( !strcmp( tmp, "comprar", true ))
{
if( LiberadoCasa[ playerid ] == 0 )
{
SendClientMessage( playerid, COLOR_ERRO, "[ > ] Vocк precisa de permissгo de um administrador para pode comprar uma casa." );
return 1;
}
for( new c; c < MAX_CASAS; ++c )
{
if( IsPlayerInRangeOfPoint( playerid, 3.0, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] ))
{
if( !strcmp( CasaInfo[ c ][ Proprietario ], PlayerName( playerid ), false ))
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Essa casa jб й sua !" );
return 1;
}
if( strcmp( CasaInfo[ c ][ Proprietario ], "Ninguem", false ))
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Essa casa jб tem dono !" );
return 1;
}
new
CasaID = dini_Int( f( playerid ), "Casa" )
;
if( CasaID > 0 )
{
if( !strcmp( CasaInfo[ CasaID ][ Proprietario ], PlayerName( playerid ), false ))
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк jб й dono(a) de uma casa !" );
return 1;
}
else if( strcmp( CasaInfo[ CasaID ][ Proprietario ], PlayerName( playerid ), false ))
{
dini_IntSet( f( playerid ), "Casa", -1 );
}
}
new
MorandoID = dini_Int( f( playerid ), "MorandoID" )
;
if( MorandoID > 0 )
{
if( !strcmp( CasaInfo[ MorandoID ][ Morador ], PlayerName( playerid ), false ) || !strcmp( CasaInfo[ MorandoID ][ Morador2 ], PlayerName( playerid ), false ) || !strcmp( CasaInfo[ MorandoID ][ Morador3 ], PlayerName( playerid ), false ))
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк й morador(a) de uma casa, antes de comprar essa casa vocк precisa revogar sua moradia !" );
return 1;
}
else if( strcmp( CasaInfo[ MorandoID ][ Morador ], PlayerName( playerid ), false ) && strcmp( CasaInfo[ MorandoID ][ Morador2 ], PlayerName( playerid ), false ) && strcmp( CasaInfo[ MorandoID ][ Morador3 ], PlayerName( playerid ), false ))
{
dini_IntSet( f( playerid ), "MorandoID", -1 );
}
}
if( GetPlayerCash( playerid ) < CasaInfo[ c ][ Preco ] )
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo tem dinheiro suficiente !" );
return 1;
}
format( hFile, sizeof( hFile ), "Casas/casa%d.ini", CasaInfo[ c ][ Numero ] );
if( dini_Int( hFile, "Leilao" ) == 1 )
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Essa casa sу pode ser comprada atraves do Leilao !" );
SendClientMessage( playerid, COLOR_ERRO, "[ ~ ] Acesse nosso fуrum e procure pelo Leilao." );
return 1;
}
format( gFile, sizeof( gFile ), "Contas/%s.ini", PlayerName( playerid ));
new
zone[ MAX_ZONE_NAME ]
;
GetPlayer2DZone( playerid, zone, MAX_ZONE_NAME );
format( gstring, sizeof( gstring ), "[ INFO ] Jogador {FFFFFF}%s {99FF66}comprou a Casa ID {FFFFFF}%d, {99FF66}localizada em: {FFFFFF}%s", PlayerName( playerid ), CasaInfo[ c ][ Numero ], zone );
SendClientMessageToAll( 0x99FF66AA, gstring );
dini_IntSet( gFile, "Casa", CasaInfo[ c ][ Numero ] );
dini_IntSet( gFile, "Spawn", 1 );
dini_IntSet( gFile, "Impostos", 0 );
dini_IntSet( gFile, "Atrasados", 0 );
sGivePlayerCash( playerid, -CasaInfo[ c ][ Preco ] );
DestroyPickup( CasaPickup[ c ] );
CasaPickup[ c ] = CreatePickup( 1272, 23, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] );
dini_Set( hFile, "Dono", "1" );
dini_Set( hFile, "Proprietario", PlayerName( playerid ));
format( CasaInfo[ c ][ Proprietario ], 50, PlayerName( playerid ));
format( CasaInfo[ c ][ Morador ], 64, "Ninguem" );
dini_Set( hFile, "Morador", "Ninguem" );
format( CasaInfo[ c ][ Morador2 ], 64, "Ninguem" );
dini_Set( hFile, "Morador2", "Ninguem" );
format( CasaInfo[ c ][ Morador3 ], 64, "Ninguem" );
dini_Set( hFile, "Morador3", "Ninguem" );
CasaInfo[ c ][ Status ] = 0;
pInfo[ playerid ][ Spawn ] = 1;
LiberadoCasa[ playerid ] = 0;
// -- Login
dini_Set( hFile, "Login", dini_Get( gFile, "ulData" ));
format( CasaInfo[ c ][ Login ], 12, dini_Get( gFile, "ulData" ));
dini_Set( hFile, "Horario", Ghora());
format( CasaInfo[ c ][ Horario ], 12, Ghora());
new
casacom[ 128 ]
;
format( casacom, sizeof( casacom ), "%s comprou a casa %d | %s | %s", PlayerName( playerid ), CasaInfo[ c ][ Numero ], Gdata(), Ghora());
casaComprou( casacom );
pInfo[ playerid ][ Casa ] = c;
format( gStr, sizeof( gStr ), "Casa {F03400}[ {FFFFFF}ID %d {F03400} ] {FFFFFF}- {FF0000}Possui dono(a)", CasaInfo[ c ][ Numero ] );
Update3DTextLabelText( CasaLabel[ c ], COLOR_BRANCO, gStr );
return 1;
}
}
return 1;
}
else if( !strcmp( tmp, "vender", true ))
{
for( new c; c < MAX_CASAS; ++c )
{
if( IsPlayerInRangeOfPoint( playerid, 3.0, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] ))
{
format( hFile, sizeof( hFile ), "Casas/casa%d.ini", CasaInfo[ c ][ Numero ] );
if( strcmp( dini_Get( hFile, "Proprietario" ), PlayerName( playerid ), false ))
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo й dono(a) desta casa !" );
return 1;
}
format( gFile, sizeof( gFile ), "Contas/%s.ini", PlayerName( playerid ));
sGivePlayerCash( playerid, CasaInfo[ c ][ Preco ] * 90 / 100 );
new
zone[ MAX_ZONE_NAME ]
;
GetPlayer2DZone( playerid, zone, MAX_ZONE_NAME );
format( gstring, sizeof( gstring ), "[ INFO ] Jogador {FFFFFF}%s {E86B3F}vendeu a Casa ID {FFFFFF}%d, {E86B3F}localizada em: {FFFFFF}%s", PlayerName( playerid ), CasaInfo[ c ][ Numero ], zone );
SendClientMessageToAll( 0xE86B3FFF, gstring );
dini_IntSet( gFile, "Casa", -1 );
dini_IntSet( gFile, "Impostos", 0 );
dini_IntSet( gFile, "Atrasados", 0 );
dini_IntSet( gFile, "Spawn", 0 );
pInfo[ playerid ][ Spawn ] = 0;
new
strC[ 128 ]
;
if( strcmp( CasaInfo[ c ][ Morador ], "Ninguem", false ))
{
format( strC, sizeof( strC ), "Contas/%s.ini", CasaInfo[ c ][ Morador ] );
dini_IntSet( strC, "MorandoID", -1 );
dini_IntSet( strC, "Spawn", 0 );
}
if( strcmp( CasaInfo[ c ][ Morador2 ], "Ninguem", false ))
{
format( strC, sizeof( strC ), "Contas/%s.ini", CasaInfo[ c ][ Morador2 ] );
dini_IntSet( strC, "MorandoID", -1 );
dini_IntSet( strC, "Spawn", 0 );
}
if( strcmp( CasaInfo[ c ][ Morador3 ], "Ninguem", false ))
{
format( strC, sizeof( strC ), "Contas/%s.ini", CasaInfo[ c ][ Morador3 ] );
dini_IntSet( strC, "MorandoID", -1 );
dini_IntSet( strC, "Spawn", 0 );
}
DestroyPickup( CasaPickup[ c ] );
CasaPickup[ c ] = CreatePickup( 1273, 23, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] );
format( CasaInfo[ c ][ Proprietario ], 12, "Ninguem" );
format( CasaInfo[ c ][ Morador ], 12, "Ninguem" );
format( CasaInfo[ c ][ Morador2 ], 12, "Ninguem" );
format( CasaInfo[ c ][ Morador3 ], 12, "Ninguem" );
format( CasaInfo[ c ][ Login ], 12, "00/00/0000" );
format( CasaInfo[ c ][ Horario ], 12, "00:00:00" );
format( CasaInfo[ c ][ Mensagem ], 6, "Nada" );
CasaInfo[ c ][ Status ] = 0;
dini_Set( hFile, "Proprietario", "Ninguem" );
dini_Set( hFile, "Morador", "Ninguem" );
dini_Set( hFile, "Morador2", "Ninguem" );
dini_Set( hFile, "Morador3", "Ninguem" );
dini_Set( hFile, "Login", "00/00/0000" );
dini_Set( hFile, "Horario", "00:00:00" );
dini_Set( hFile, "Mensagem", "Nada" );
dini_Set( hFile, "Status", "0" );
dini_Set( hFile, "Dono", "0" );
PHP код:
if( !strcmp( cmd, "/colocarleilao", true ))
{
for( new c; c < MAX_CASAS; ++c )
{
if( dini_Int( f( playerid ), "Patrao" ) == 1 )
{
if( IsPlayerInRangeOfPoint( playerid, 3.0, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] ))
{
format( hFile, sizeof( hFile ), "Casas/casa%d.ini", CasaInfo[ c ][ Numero ] );
DestroyPickup( CasaPickup[ c ] );
dini_IntSet( hFile, "Leilao", 1 );
format( gStr, sizeof( gStr ), "Casa {F03400}[ {FFFFFF}ID %d {F03400} ] {FFFFFF}- {FF0000}Leilao", CasaInfo[ c ][ Numero ] );
Update3DTextLabelText( CasaLabel[ c ], COLOR_BRANCO, gStr );
CasaPickup[ c ] = CreatePickup( 1212, 23, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] );
SendClientMessage( playerid, COLOR_AMARELO, "[ > ] Casa reservada para o Leilao." );
return 1;
}
}
else
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo tem permissгo!" );
return 1;
}
}
}
if( !strcmp( cmd, "/retirarleilao", true ))
{
for( new c; c < MAX_CASAS; ++c )
{
if( dini_Int( f( playerid ), "Patrao" ) == 1 )
{
if( IsPlayerInRangeOfPoint( playerid, 3.0, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] ))
{
format( hFile, sizeof( hFile ), "Casas/casa%d.ini", CasaInfo[ c ][ Numero ] );
DestroyPickup( CasaPickup[ c ] );
dini_IntSet( hFile, "Leilao", 0 );
DestroyPickup( 1274 );
format( gStr, sizeof( gStr ), "Casa {F03400}[ {FFFFFF}ID %d {F03400} ] {FFFFFF}- {00FF00}Liberada", CasaInfo[ c ][ Numero ] );
Update3DTextLabelText( CasaLabel[ c ], COLOR_BRANCO, gStr );
CasaPickup[ c ] = CreatePickup( 1273, 23, CasaInfo[ c ][ PickupX ], CasaInfo[ c ][ PickupY ], CasaInfo[ c ][ PickupZ ] );
SendClientMessage( playerid, COLOR_AMARELO, "[ > ] Casa retirada do Leilao." );
return 1;
}
}
else
{
SendClientMessage( playerid, COLOR_ERRO, "[ x ] Vocк nгo tem permissгo!" );
return 1;
}
}
}