Advertisement
Xaviour212

Ulric Skin System v1.6

Apr 11th, 2011
1,547
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.66 KB | None | 0 0
  1. //============================Clothes / Skin Shop by============================
  2. //=====================Xaviour212 / Dimas Rizward H=============================
  3. //=================Dont Remove the Credits :D===================================
  4. //  Changelog :
  5. //  v1.6 : Now you can buy a skin from all clothes shop in GTA SA
  6. //==============================================================================
  7.  
  8. #include <a_samp>
  9. #include <dini>
  10. #include <sscanf>
  11.  
  12. #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
  13.  
  14. #define Blue 0x0259EAAA
  15. #define Red 0xFF0000AA
  16. #define Green 0x16EB43FF
  17.  
  18. new file[256];
  19.  
  20. forward IsAtClothesShop(playerid);
  21. forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
  22.  
  23. public OnFilterScriptInit()
  24. {
  25.     print("\n--------------------------------------");
  26.     print(" Clothes / Skin Shop by Xaviour212");
  27.     print("--------------------------------------\n");
  28.     return 1;
  29. }
  30.  
  31. public OnPlayerCommandText(playerid, cmdtext[])
  32. {
  33.     dcmd(buyskin,7,cmdtext);
  34.     dcmd(useskins,8,cmdtext);
  35.     dcmd(sellskin,8,cmdtext);
  36.     dcmd(hskin,4,cmdtext);
  37.    
  38.     return 0;
  39. }
  40.  
  41. dcmd_buyskin(playerid, params[])
  42. {
  43.     new skin;
  44.     if(!IsAtClothesShop(playerid)) return SendClientMessage(playerid, Red, "[ERROR]You must in clothes shop to buy the skin");
  45.     if(sscanf(params,"i",skin)) return SendClientMessage(playerid,Red,"[ERROR]USAGE: /myskins [SkinID]");
  46.     if(!IsValidSkin(skin)) return SendClientMessage(playerid,Red,"[ERROR]Invalid skinID");
  47.     SetPlayerSkin(playerid,skin);
  48.     GivePlayerMoney(playerid, -500);
  49.     if(!dini_Exists(PFile(playerid)))
  50.     {
  51.         dini_Create(PFile(playerid));
  52.         dini_IntSet(PFile(playerid),"Skin",GetPlayerSkin(playerid));
  53.     }
  54.     else if(dini_Exists(PFile(playerid)))
  55.     {
  56.         dini_IntSet(PFile(playerid),"Skin",GetPlayerSkin(playerid));
  57.     }
  58.     SendClientMessage(playerid, Green, "You has buy a skin. Every you connect you can use command /useskin");
  59.     return 1;
  60. }
  61.  
  62. dcmd_useskins(playerid, params[])
  63. {
  64.     #pragma unused params
  65.     if(!dini_Exists(PFile(playerid))) return SendClientMessage(playerid, Red, "[ERROR]You dont have a skin");
  66.     SetPlayerSkin(playerid, dini_Int(PFile(playerid),"Skin"));
  67.     SendClientMessage(playerid, Green, "Skin has been changed");
  68.     return 1;
  69. }
  70.  
  71. dcmd_sellskin(playerid, params[])
  72. {
  73.     #pragma unused params
  74.     if(!dini_Exists(PFile(playerid))) return SendClientMessage(playerid, Red, "[ERROR]You dont have a skin");
  75.     dini_IntSet(PFile(playerid),"Skin",0);
  76.     dini_Remove(PFile(playerid));
  77.     SendClientMessage(playerid, Green, "You has sell your skin");
  78.     GivePlayerMoney(playerid, 300);
  79.     return 1;
  80. }
  81.  
  82. dcmd_hskin(playerid, params[])
  83. {
  84.     #pragma unused params
  85.     SendClientMessage(playerid, Blue, "Ulric Skin System by ~Xaviour212~");
  86.     SendClientMessage(playerid, Green, "Type /buyskin to buy a skin");
  87.     SendClientMessage(playerid, Green, "Type /useskins to use you skin from Clothes Shop");
  88.     SendClientMessage(playerid, Green, "Type /sellskin to sell you skin");
  89.     SendClientMessage(playerid, Blue, "~Don't remove the credits~");
  90.     return 1;
  91. }
  92.  
  93. public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
  94. {
  95.     new Float:oldposx, Float:oldposy, Float:oldposz;
  96.     new Float:tempposx, Float:tempposy, Float:tempposz;
  97.     GetPlayerPos(playerid, oldposx, oldposy, oldposz);
  98.     tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z);
  99.     if(((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
  100.     { return true; }
  101.     return false;
  102. }
  103.  
  104. public IsAtClothesShop(playerid)
  105. {
  106.     if(PlayerToPoint(20,playerid,161.5236, -83.3203, 1001.8047) ||
  107.     PlayerToPoint(20,playerid,207.7182,-100.9436,1005.2578) ||
  108.     PlayerToPoint(20,playerid,203.9261,-43.2656,1001.8047) ||
  109.     PlayerToPoint(20,playerid,206.3746,-8.1824,1001.2109) ||
  110.     PlayerToPoint(20,playerid,207.0685,-129.1833,1003.5078))
  111.     { return true; }
  112.     return false;
  113. }
  114.  
  115. stock Gn(playerid)
  116. {
  117.     new pname[24];
  118.     GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
  119.     return pname;
  120. }
  121.  
  122. stock PFile(playerid)
  123. {
  124.     format(file,64,"Clothes/%s.ini",Gn(playerid));
  125.     return file;
  126. }
  127.  
  128. stock IsValidSkin(SkinID)
  129. {
  130.     if((SkinID >= 0 && SkinID <= 2)||(SkinID == 7)||(SkinID >= 9 && SkinID <= 41)||(SkinID >= 43 && SkinID <= 64)||(SkinID >= 66 && SkinID <= 73)||(SkinID >= 75 && SkinID <= 85)||(SkinID >= 87 && SkinID <= 118)||(SkinID >= 120 && SkinID <= 148)||(SkinID >= 150 && SkinID <= 207)||(SkinID >= 209 && SkinID <= 264)||(SkinID >= 274 && SkinID <= 288)||(SkinID >= 290 && SkinID <= 299)) return true;
  131.     else return false;
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement