#include a_samp
#include DOF2
#include ZCMD
new
StringMochila [ 128 ] ,
String2 [ 70 ];
#define DIALOG_MOCHILA1 123+123 // Dialog em Geral
#define DIALOG_MOCHILA2 123+124 // Guardar Skin
#define DIALOG_MOCHILA3 123+125 // Guardar Arma
#define DIALOG_MOCHILA4 123+126 // Guardar Dinheiro
#define DIALOG_MOCHILA5 123+127 // Usar Skin
#define DIALOG_MOCHILA6 123+128 // Pegar Arma
#define DIALOG_MOCHILA7 123+129 // Pegar Dinheiro
#define DIALOG_MOCHILA8 123+130 // Guardar Arma 1
#define DIALOG_MOCHILA9 123+131 // Guardar Arma 2
#define DIALOG_MOCHILA10 123+132 // Pegar Arma 1
#define DIALOG_MOCHILA11 123+133 // Pegar Arma 2
public
OnPlayerConnect ( playerid )
{
format ( StringMochila, sizeof ( StringMochila ), "Mochilas/%s.txt", PlayerName ( playerid ) );
if ( !DOF2_FileExists ( StringMochila ) )
{
DOF2_CreateFile ( StringMochila ) ;
DOF2_SetString ( StringMochila , "Skin", "Nenhuma" );
DOF2_SetString ( StringMochila , "Arma1", "Nenhuma" );
DOF2_SetString ( StringMochila , "Municao1", "Nenhuma" );
DOF2_SetString ( StringMochila , "Arma2", "Nenhuma" );
DOF2_SetString ( StringMochila , "Municao2", "Nenhuma" );
DOF2_SetString ( StringMochila , "Dinheiro", "Nenhuma" ) ;
}
return true;
}
public
OnPlayerSpawn ( playerid )
{
SetPlayerPos ( playerid , 2089.0505,2068.1211,10.8203 );
SetPlayerInterior( playerid , 0 ) ;
return true ;
}
CMD:minhamochila(playerid)
{
format ( StringMochila, sizeof ( StringMochila ), "Mochilas/%s.txt", PlayerName ( playerid ) );
if ( DOF2_FileExists ( StringMochila ) )
{
ShowPlayerDialog ( playerid, DIALOG_MOCHILA1, DIALOG_STYLE_LIST, "Mochila", "Colocar Mochila\nGuardar Mochila\nGuardar Skin\nGuardar Arma\nGuardar Dinheiro\nUsar Skin\nPegar Arma\nPegar Dinheiro", "Feito" ,"Cancelar" ) ;
}
return true;
}
public
OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
format ( StringMochila, sizeof ( StringMochila ), "Mochilas/%s.txt", PlayerName ( playerid ) );
if ( dialogid == DIALOG_MOCHILA1 )
{
if ( response )
{
switch ( listitem )
{
case 0:
{
RemovePlayerAttachedObject ( playerid , 1 ) ;
SetPlayerAttachedObject ( playerid , 1 , 3026 , 1,-0.16, -0.08, 0.0, 0.5, 0.5,0.0, 1.0, 1.3, 1.0, -1, 0); // Coordenadas by Fórum SA:MP
SendClientMessage ( playerid, 0xFF6347 , "Mochila colocada." ) ;
ShowPlayerDialog ( playerid, DIALOG_MOCHILA1, DIALOG_STYLE_LIST, "Mochila","Colocar Mochila\nGuardar Mochila\nGuardar Skin\nGuardar Arma\nGuardar Dinheiro\nUsar Skin\nPegar Arma\nPegar Dinheiro", "Feito" , "Cancelar" ) ;
}
case 1:
{
RemovePlayerAttachedObject ( playerid , 1 ) ;
SendClientMessage ( playerid, 0xFF6347 , "Mochila guardada." ) ;
ShowPlayerDialog ( playerid, DIALOG_MOCHILA1, DIALOG_STYLE_LIST, "Mochila","Colocar Mochila\nGuardar Mochila\nGuardar Skin\nGuardar Arma\nGuardar Dinheiro\nUsar Skin\nPegar Arma\nPegar Dinheiro", "Feito" , "Cancelar" ) ;
}
case 2:
{
ShowPlayerDialog ( playerid , DIALOG_MOCHILA2 , DIALOG_STYLE_MSGBOX, "Guardar Skin", "Você tem certeza que deseja guardar sua skin?", "Tenho", "Não" ) ;
}
case 3:
{
ShowPlayerDialog ( playerid , DIALOG_MOCHILA3, DIALOG_STYLE_LIST, "Guardar Arma", "Inventório 1\nIntentório 2", "Guardar", "Cancelar" );
}
case 4:
{
ShowPlayerDialog ( playerid , DIALOG_MOCHILA4, DIALOG_STYLE_INPUT,"Guardar Dinheiro", "Digite a quantia que deseja guardar:", "Guardar", "Cancelar" );
}
case 5:
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Skin") , "Nenhuma", true ) ==0 )
return SendClientMessage ( playerid , -1 , "Você não possui nenhuma Skin guardada!" ) ;
if ( strcmp ( DOF2_GetString ( StringMochila , "Skin") , "Nenhuma", false ) ==0 )
{
format ( String2 , sizeof ( String2 ) , "Você tem certeza que deseja usar a Skin que guardou ( %d )?", DOF2_GetString ( StringMochila , "Skin" ) );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA5 , DIALOG_STYLE_MSGBOX , "Usar Skin" , String2 , "Usar" , "Cencelar");
}
}
case 6:
{
ShowPlayerDialog ( playerid , DIALOG_MOCHILA6, DIALOG_STYLE_LIST, "Pegar Arma", "Inventório 1\nIntentório 2", "Pegar", "Cancelar" );
}
case 7:
{
format ( String2 , sizeof ( String2 ) , "Você deseja pegar quanto em dinheiro na sua mochila ( R$:%d )?", DOF2_GetString ( StringMochila , "Dinheiro" ) );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA7 , DIALOG_STYLE_INPUT ,"Pegar Dinheiro" , String2 , "Pegar" , "Cencelar");
}
}
return true;
}
if ( dialogid == DIALOG_MOCHILA2 )
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Skin") , "Nenhuma", false ) == 0 )
return SendClientMessage ( playerid , 0xEE5C42, "Você já possui uma Skin guardada!" );
if ( response )
{
DOF2_SetInt ( StringMochila , "Skin" , GetPlayerSkin ( playerid ) ) ;
DOF2_SaveFile ();
SendClientMessage ( playerid, 0x00FF7F, "Roupa Guardada com Sucesso!" ) ;
SetPlayerSkin ( playerid, 0 ) ;
}
}
return true;
}
if ( dialogid == DIALOG_MOCHILA3 )
{
if ( response )
{
switch ( listitem )
{
case 0:
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Arma1") , "Nenhuma", false ) == 0 )
return SendClientMessage ( playerid , 0xEE5C42, "Você já possui uma arma guardada nesse inventório!" );
new
NomeArma [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma , sizeof ( NomeArma ) );
if ( GetPlayerWeapon ( playerid ) == 0 )
return SendClientMessage ( playerid , -1 , "Você não pode guardar sua mão na mochila." ) ;
format ( String2 , sizeof ( String2 ) , "Você tem certeza que deseja guardar sua %s?", NomeArma );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA8 , DIALOG_STYLE_MSGBOX ,"Guardar Arma" , String2 , "Guardar" , "Cencelar");
}
case 1:
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Arma2") , "Nenhuma", false ) == 0 )
return SendClientMessage ( playerid , 0xEE5C42, "Você já possui uma arma guardada nesse inventório!" );
if ( GetPlayerWeapon ( playerid ) == 0 )
return SendClientMessage ( playerid , -1 , "Você não pode guardar sua mão na mochila." ) ;
new
NomeArma [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma , sizeof ( NomeArma ) );
format ( String2 , sizeof ( String2 ) , "Você tem certeza que deseja guardar sua %s?", NomeArma );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA9 , DIALOG_STYLE_MSGBOX ,"Guardar Arma" , String2 , "Guardar" , "Cencelar");
}
}
}
return true;
}
if ( dialogid == DIALOG_MOCHILA4 )
{
if ( response )
{
if ( ! IsNumeric ( inputtext ) )
return SendClientMessage ( playerid , 0xEE5C42 , "Somente números!" ) ,ShowPlayerDialog ( playerid , DIALOG_MOCHILA4, DIALOG_STYLE_INPUT, "Guardar Dinheiro", "Digite a quantia que deseja guardar:", "Guardar", "Cancelar" );
if ( GetPlayerMoney ( playerid ) < strval ( inputtext ) )
return SendClientMessage ( playerid ,0xB22222AA , "Você não tem está quantia em dinheiro ! ") ;
DOF2_SetInt ( StringMochila , "Dinheiro" , DOF2_GetInt ( StringMochila , "Dinheiro" ) +strval ( inputtext ) ) ;
DOF2_SaveFile ();
format ( String2 , sizeof ( String2 ) , "Você guardou R$%d na sua mochila. Você possui guardado R$%d" , strval ( inputtext ) , DOF2_GetInt ( StringMochila , "Dinheiro" ) );
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
GivePlayerMoney ( playerid , - strval ( inputtext ) ) ;
}
return true;
}
if ( dialogid == DIALOG_MOCHILA5 )
{
if ( response )
{
format ( String2 , sizeof ( String2 ) , "Você colocou a Skin %d que estava em seu inventório." , DOF2_GetInt ( StringMochila , "Skin" ) );
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
SetPlayerSkin ( playerid , DOF2_GetInt ( StringMochila , "Skin" ) ) ;
DOF2_SetString ( StringMochila , "Skin" , "Nenhuma" ) ;
DOF2_SaveFile();
}
return true;
}
if ( dialogid == DIALOG_MOCHILA6 )
{
if ( response )
{
switch ( listitem )
{
case 0:
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Arma1") , "Nenhuma", true ) ==0 )
return SendClientMessage ( playerid , 0xEE5C42, "Você não possui uma arma guardada nesse inventório!" );
new
NomeArma [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma , sizeof ( NomeArma ) );
format ( String2 , sizeof ( String2 ) , "Você tem certeza que deseja pegar sua %s?", NomeArma );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA10 , DIALOG_STYLE_MSGBOX ,"Pegar Arma" , String2 , "Pegar" , "Cencelar");
}
case 1:
{
if ( strcmp ( DOF2_GetString ( StringMochila , "Arma2") , "Nenhuma", true ) ==0 )
return SendClientMessage ( playerid , 0xEE5C42, "Você não possui uma arma guardada nesse inventório!" );
new
NomeArma [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma , sizeof ( NomeArma ) );
format ( String2 , sizeof ( String2 ) , "Você tem certeza que deseja pegar sua %s?", NomeArma );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA11 , DIALOG_STYLE_MSGBOX ,"Pegar Arma" , String2 , "Pegar" , "Cencelar");
}
}
}
return true;
}
if ( dialogid == DIALOG_MOCHILA7 )
{
if ( response )
{
if ( ! IsNumeric ( inputtext ) )
{
SendClientMessage ( playerid , 0xEE5C42 , "Somente números!" ) ;
format ( String2 , sizeof ( String2 ) , "Você deseja pegar quanto em dinheiro na sua mochila ( R$:%d )?", DOF2_GetString ( StringMochila , "Dinheiro" ) );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA7 , DIALOG_STYLE_INPUT , "Pegar Dinheiro" , String2 , "Pegar" , "Cencelar");
}
if ( DOF2_GetInt ( StringMochila , "Dinheiro" ) < strval ( inputtext ) )
{
SendClientMessage ( playerid ,0xB22222AA , "Você não tem está quantia em dinheiro ! ") ;
format ( String2 , sizeof ( String2 ) , "Você deseja pegar quanto em dinheiro na sua mochila ( R$:%d )?", DOF2_GetString ( StringMochila , "Dinheiro" ) );
ShowPlayerDialog ( playerid , DIALOG_MOCHILA7 , DIALOG_STYLE_INPUT , "Pegar Dinheiro" , String2 , "Pegar" , "Cencelar");
}
DOF2_SetInt ( StringMochila , "Dinheiro" , DOF2_GetInt ( StringMochila , "Dinheiro" ) -strval ( inputtext ) ) ;
DOF2_SaveFile ();
format ( String2 , sizeof ( String2 ) , "Você pegou R$%d na sua mochila. Você possui guardado R$%d" , strval ( inputtext ) , DOF2_GetInt ( StringMochila , "Dinheiro" ) );
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
GivePlayerMoney ( playerid , GetPlayerMoney ( playerid ) + strval ( inputtext ) ) ;
}
return true;
}
if ( dialogid == DIALOG_MOCHILA8 )
{
if ( response )
{
new
NomeArma [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma , sizeof ( NomeArma ) ) ;
format ( String2 , sizeof ( String2 ) , "Você colocou a arma %s em sua mochila." , NomeArma );
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
new
Armas [ 13 ] [ 2 ] ;
for ( new i = 0; i < 13; ++ i)
{
GetPlayerWeaponData ( playerid , i , Armas [ i ] [ 0 ] , Armas [ i ] [ 1 ] ) ;
DOF2_SetInt ( StringMochila , "Arma2" , GetPlayerWeapon ( playerid ) ) ;
DOF2_SetString ( StringMochila , "Municao2" , Armas [ i ] [ 1 ] ) ;
DOF2_SaveFile();
}
RemovePlayerWeapon ( playerid , GetPlayerWeapon ( playerid ) ) ;
}
return true;
}
if ( dialogid == DIALOG_MOCHILA9 )
{
if ( response )
{
new
NomeArma2 [ 30 ];
GetWeaponName( GetPlayerWeapon ( playerid ) , NomeArma2 , sizeof ( NomeArma2 ) ) ;
format ( String2 , sizeof ( String2 ) , "Você colocou a arma %s em sua mochila." , NomeArma2 );
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
new
Armas2 [ 13 ] [ 2 ] ;
for ( new i = 0; i < 13; ++ i)
{
GetPlayerWeaponData ( playerid , i , Armas2 [ i ] [ 0 ] , Armas2 [ i ] [ 1 ] ) ;
DOF2_SetInt ( StringMochila , "Arma2" , GetPlayerWeapon ( playerid ) ) ;
DOF2_SetString ( StringMochila , "Municao2" , Armas [ i ] [ 1 ] ) ;
DOF2_SaveFile();
}
RemovePlayerWeapon ( playerid , GetPlayerWeapon ( playerid ) ) ;
}
return true;
}
if ( dialogid == DIALOG_MOCHILA10 )
{
if ( response )
{
new
NomeArma3 [ 30 ];
GetWeaponName( DOF2_GetInt ( StringMochila , "Arma1" ) , NomeArma3 , sizeof ( NomeArma3 )) ;
format ( String2 , sizeof ( String2 ) , "Você pegou a arma %s em sua mochila." , NomeArma3);
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
GivePlayerWeapon ( playerid , DOF2_GetInt ( StringMochila , "Arma1" ), DOF2_GetInt (StringMochila , "Municao1" ) ) ;
DOF2_SetString ( StringMochila , "Arma1", "Nenhuma" ) ;
DOF2_SetString ( StringMochila , "Municao1", "Nenhuma" ) ;
DOF2_SaveFile ();
}
return true;
}
if ( dialogid == DIALOG_MOCHILA11 )
{
if ( response )
{
new
NomeArma4 [ 30 ];
GetWeaponName( DOF2_GetInt ( StringMochila , "Arma2" ) , NomeArma4 , sizeof ( NomeArma4 )) ;
format ( String2 , sizeof ( String2 ) , "Você pegou a arma %s em sua mochila." , NomeArma4);
SendClientMessage ( playerid , 0x00FF00AA , String2 ) ;
GivePlayerWeapon ( playerid , DOF2_GetInt ( StringMochila , "Arma2" ), DOF2_GetInt (StringMochila , "Municao2" ) ) ;
DOF2_SetString ( StringMochila , "Arma2", "Nenhuma" ) ;
DOF2_SetString ( StringMochila , "Municao2", "Nenhuma" ) ;
DOF2_SaveFile ();
}
return true;
}
return true;
}
PlayerName ( playerid )
{
new Nome [ 24 ] ;
GetPlayerName ( playerid , Nome, sizeof (Nome) );
return Nome;
}
IsNumeric(const string[]) // by Mike (MP2)
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return false;
}
return true;
}
RemovePlayerWeapon(playerid, weaponid) // by Mike (MP2)
{
new pWeaponData[13][2];
for (new i = 0; i < 13; i++)
{
GetPlayerWeaponData(playerid, i, pWeaponData[i][0], pWeaponData[i][1]);
}
ResetPlayerWeapons(playerid);
for(new i=0; i<13; i++)
{
if(pWeaponData[i][0] != 0 && pWeaponData[i][0] != weaponid)
{
GivePlayerWeapon(playerid, pWeaponData[i][0], pWeaponData[i][1]);
}
}
return 0;
}