ricop522

[PAWN] Sistema de Casas [jHouse]

Feb 14th, 2012
355
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.07 KB | None | 0 0
  1. #define                 MAX_CASAS                   100
  2. #define                 FILE_CASAS       "casas/%i.ini"
  3. forward                 salvarCasa(casaid);
  4. forward                 carregarCasas();
  5. forward                 casaCriar(str[]);
  6. enum E_CASA_INFO {
  7.     hID,
  8.     hDono[MAX_PLAYER_NAME],
  9.     Float:ePos[3],
  10.     Float:sPos[3],
  11.     hInterior,
  12.     Trancada
  13.  
  14. }
  15. new casasInfo[MAX_CASAS][E_CASA_INFO], casastr[128], hPickup[MAX_HOUSES];
  16.  
  17. public salvarCasa(casaid) {
  18.     format(casastr, 128, FILE_CASAS, casaid);
  19.     if(!dini_Exists(casastr)) {
  20.         casaCriar(casastr);
  21.     }
  22.     dini_IntSet(casastr, "ID", casaid);
  23.     dini_Set(casastr, "Dono", casasInfo[casaid][hDono]);
  24.     dini_FloatSet(casastr, "entradaX", casasInfo[casaid][ePos][0]);
  25.     dini_FloatSet(casastr, "entradaY", casasInfo[casaid][ePos][1]);
  26.     dini_FloatSet(casastr, "entradaZ", casasInfo[casaid][ePos][2]);
  27.     dini_FloatSet(casastr, "saidaX", casasInfo[casaid][sPos][0]);
  28.     dini_FloatSet(casastr, "saidaY", casasInfo[casaid][sPos][1]);
  29.     dini_FloatSet(casastr, "saidaZ", casasInfo[casaid][sPos][2]);
  30.     dini_IntSet(casastr, "Interior", casasInfo[casaid][hInterior]);
  31.     dini_IntSet(casastr, "Trancada", casasInfo[casaid][Trancada]);
  32.     return 1;
  33. }
  34. public casaCriar(str[]) {
  35.     dini_Create(str);
  36.     dini_IntSet(casastr, "ID", 0);
  37.     dini_Set(casastr, "Dono", "N/A");
  38.     dini_FloatSet(casastr, "entradaX", 0.0);
  39.     dini_FloatSet(casastr, "entradaY", 0.0);
  40.     dini_FloatSet(casastr, "entradaZ", 0.0);
  41.     dini_FloatSet(casastr, "saidaX", 0.0);
  42.     dini_FloatSet(casastr, "saidaY", 0.0);
  43.     dini_FloatSet(casastr, "saidaZ", 0.0);
  44.     dini_IntSet(casastr, "Interior", 0);
  45.     dini_IntSet(casastr, "Trancada", 0);
  46.     return 1;
  47. }
  48. public carregarCasas() {
  49.     for(new a = 0, b = sizeof(MAX_CASAS); a != b; ++a) {
  50.         format(casastr, 128, FILE_CASAS, a);
  51.         if(dini_Exists(casastr)) {
  52.             casasInfo[i][hID] = i;
  53.             strmid(casasInfo[i][hDono], dini_Get(casastr, "Dono"), strlen(dini_Get(casastr, "Dono")), 255);
  54.             casasInfo[i][ePos][0] = dini_Float(casastr, "entradaX");
  55.             casasInfo[i][ePos][1] = dini_Float(casastr, "entradaY");
  56.             casasInfo[i][ePos][2] = dini_Float(casastr, "entradaZ");
  57.             casasInfo[i][sPos][0] = dini_Float(casastr, "saidaX");
  58.             casasInfo[i][sPos][1] = dini_Float(casastr, "saidaY");
  59.             casasInfo[i][sPos][2] = dini_Float(casastr, "saidaZ");
  60.             casasInfo[i][hInterior] = dini_Int(casastr, "Interior");
  61.             casasInfo[i][Trancada] = dini_Int(casastr, "Trancada");
  62.             hPickup[i] = CreateDynamicPickup(1239, 1, casasInfo[i][ePos][0],casasInfo[i][ePos][1],casasInfo[i][ePos][2],-1, -1, -1, 15.0);
  63.         }
  64.     }
  65.     return 1;
  66. }
  67. command(criarcasa, playerid, params[]) {
  68.     new interior;
  69.     if(sscanf(params, "i", interior)) return SendClientMessage(playerid, -1, "/criarcasa [interior]");
  70.     switch(interior) {
  71.         case 1:
  72.         case 2:
  73.         case 3:
  74.         case 4:
  75.         case 5:
  76.         case 6:
  77.         case 7:
  78.         case 8:
  79.     }
  80.     return 1;
  81. }
Advertisement
Add Comment
Please, Sign In to add comment