SATraing.pwn 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. CMD:propriedades(playerid, params[])
  2. {
  3. if(!Logged{playerid}) return true;
  4. if(!IsPlayerInRangeOfPoint(playerid,7.5,1341.4280,213.4901,1378.1924) && Faction[playerid] != FACTION_PROP) return SysMsg(playerid,"Você deve estar nos escritórios Silver Trading para usar esse comando.");
  5. Dialog_Show(playerid, STPropertiesMenu, DIALOG_STYLE_LIST, "Selecionar uma opção", "Ver propriedades da SA Trading\nVer casas livres", "Selecionar", "Cancelar");
  6. return true;
  7. }
  8. CMD:addp(playerid, params[])
  9. {
  10. if(!Logged{playerid}) return true;
  11. if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
  12. new idx = 0, forsale, price;
  13. if(sscanf(params, "ii", forsale, price)) return SysMsg(playerid,"Use: /addp [à venda 0/1/2] [$preço]");
  14. if(forsale < 0 || forsale > 2) return SysMsg(playerid,"O parâmetro de venda deve ser 1(não), 2(sim), ou 0(escondido de /properties).");
  15. if(price < 1 || price > 100000000) return SysMsg(playerid,"parâmetro de preço deve estar entre 1 e 100,000,000.");
  16. for(idx = 0; idx < MAX_HOUSES; idx++)
  17. {
  18. if(IsPlayerInRangeOfPoint(playerid, 0.75, HouseData[idx][oPosX], HouseData[idx][oPosY], HouseData[idx][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[idx][HouseExtVW])
  19. {
  20. HouseData[idx][HouseOwnerSQLID] = -5;
  21. MySQLUpdateInt(HouseData[idx][HouseSQLID], "OwnerSQLID", -5, "houses");
  22. if(forsale != 0)
  23. {
  24. mysql_format(conn, mquery, sizeof(mquery), "REPLACE INTO traders (Type, ForSale, Price, SQLID, Description) VALUES (1, %i, %i, %i, '%e')", forsale - 1, price, HouseData[idx][HouseSQLID], HouseData[idx][HouseDescription]);
  25. mysql_pquery(conn, mquery);
  26. }
  27. SendClientMessageF(playerid, COLOR_WHITE, "A casa '%s' agora está em Silver Trading por $%i", HouseData[idx][HouseDescription], price);
  28. return true;
  29. }
  30. }
  31. for(idx = 0; idx < MAX_BIZZ; idx++)
  32. {
  33. if(IsPlayerInRangeOfPoint(playerid, 0.75, BizzData[idx][oPosX], BizzData[idx][oPosY], BizzData[idx][oPosZ]))
  34. {
  35. BizzData[idx][BizzOwnerSQLID] = -5;
  36. MySQLUpdateInt(BizzData[idx][BizzSQLID], "OwnerSQLID", -5, "bizz");
  37. if(forsale != 0)
  38. {
  39. mysql_format(conn, mquery, sizeof(mquery), "REPLACE INTO traders (Type, ForSale, Price, SQLID, Description) VALUES (2, %i, %i, %i, '%e')", forsale - 1, price, BizzData[idx][BizzSQLID], BizzData[idx][BizzDescription]);
  40. mysql_pquery(conn, mquery);
  41. }
  42. SendClientMessageF(playerid, COLOR_WHITE, "A empresa '%s' agora está em Silver Trading por $%i", BizzData[idx][BizzDescription], price);
  43. return true;
  44. }
  45. }
  46. return true;
  47. }
  48. CMD:getprop(playerid, params[])
  49. {
  50. if(!Logged{playerid}) return true;
  51. if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
  52. new idx;
  53. for(idx = 0; idx < MAX_HOUSES; idx++)
  54. {
  55. if(IsPlayerInRangeOfPoint(playerid, 0.75, HouseData[idx][oPosX], HouseData[idx][oPosY], HouseData[idx][oPosZ]) && GetPlayerVirtualWorld(playerid) == HouseData[idx][HouseExtVW] && HouseData[idx][HouseOwnerSQLID] == -5)
  56. {
  57. HouseData[idx][HouseOwnerSQLID] = SQLID[playerid];
  58. MySQLUpdateInt(HouseData[idx][HouseSQLID], "OwnerSQLID", SQLID[playerid], "houses");
  59. mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM traders WHERE SQLID=%i AND Type=1", HouseData[idx][HouseSQLID]);
  60. mysql_pquery(conn, mquery);
  61. format(gstr, sizeof(gstr), "A casa '%s' agora é sua.", HouseData[idx][HouseDescription]);
  62. SendClientMessage(playerid, COLOR_WHITE, gstr);
  63. return true;
  64. }
  65. }
  66. for(idx = 0; idx < MAX_BIZZ; idx++)
  67. {
  68. if(IsPlayerInRangeOfPoint(playerid, 0.75, BizzData[idx][oPosX], BizzData[idx][oPosY], BizzData[idx][oPosZ]) && BizzData[idx][BizzOwnerSQLID] == -5)
  69. {
  70. BizzData[idx][BizzOwnerSQLID] = SQLID[playerid];
  71. MySQLUpdateInt(BizzData[idx][BizzSQLID], "OwnerSQLID", SQLID[playerid], "bizz");
  72. mysql_format(conn, mquery, sizeof(mquery), "DELETE FROM traders WHERE SQLID=%i AND Type=2", BizzData[idx][BizzSQLID]);
  73. mysql_pquery(conn, mquery);
  74. format(gstr, sizeof(gstr), "A empresa '%s' agora é sua.", BizzData[idx][BizzDescription]);
  75. SendClientMessage(playerid, COLOR_WHITE, gstr);
  76. return true;
  77. }
  78. }
  79. return true;
  80. }
  81. CMD:fecharempresas(playerid, params[])
  82. {
  83. if(!Logged{playerid}) return true;
  84. if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
  85. new toggle = 0;
  86. if(sscanf(params, "i", toggle)) return SysMsg(playerid, "Use: /fecharempresas [0 para desbloquear, 1 para bloqueio]");
  87. if(toggle != 0 && toggle != 1) return cmd_fecharempresas(playerid, "");
  88. for(new b = MAX_BIZZ; b != 0; b--)
  89. {
  90. if(BizzData[b][BizzOwnerSQLID] == -5)
  91. {
  92. if(toggle == 0)
  93. {
  94. if(BizzData[b][BizzLocked])
  95. {
  96. BizzData[b][BizzLocked] = false;
  97. }
  98. }
  99. else
  100. {
  101. if(!BizzData[b][BizzLocked])
  102. {
  103. BizzData[b][BizzLocked] = true;
  104. }
  105. }
  106. }
  107. }
  108. if(toggle == 1) SysMsg(playerid, "Todas as empresas Silver Trading estam bloqueados.");
  109. else SysMsg(playerid, "Todas as empresas da SA Trading foram desbloqueados.");
  110. return true;
  111. }
  112. CMD:fecharcasas(playerid, params[])
  113. {
  114. if(!Logged{playerid}) return true;
  115. if(Faction[playerid] != FACTION_PROP) return SysMsg(playerid, AUTHMSG);
  116. new toggle = 0, idx;
  117. if(sscanf(params, "i", toggle)) return SysMsg(playerid, "Use: /fecharcasas [0 para desbloquear, 1 para bloqueio]");
  118. if(toggle == 0)
  119. {
  120. for(idx = 0; idx < MAX_HOUSES; idx++)
  121. {
  122. if(HouseData[idx][HouseOwnerSQLID] == -5)
  123. {
  124. HouseData[idx][HouseLocked] = 0;
  125. MySQLUpdateInt(HouseData[idx][HouseSQLID], "HouseLocked", HouseData[idx][HouseLocked], "houses");
  126. }
  127. }
  128. SysMsg(playerid, "Todas as casas Silver Trading foram desbloqueadas.");
  129. toggle = 1;
  130. }
  131. else
  132. {
  133. for(idx = 0; idx < MAX_HOUSES; idx++)
  134. {
  135. if(HouseData[idx][HouseOwnerSQLID] == -5)
  136. {
  137. HouseData[idx][HouseLocked] = 1;
  138. MySQLUpdateInt(HouseData[idx][HouseSQLID], "HouseLocked", HouseData[idx][HouseLocked], "houses");
  139. }
  140. }
  141. SysMsg(playerid, "Todas as casas Silver Trading foram bloqueadas.");
  142. toggle = 0;
  143. }
  144. return true;
  145. }