Advertisement
ykos

Untitled

Dec 20th, 2021
1,045
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.42 KB | None | 0 0
  1. Структура таблицы:
  2. ID | itemid | typeid | skinid | modelid | index | pos
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9. #define MAX_CUSTOM_SKINS        140
  10. #define MAX_SKIN_ATTACH_TYPES   1000
  11. new CustomSkinAccessIndex[MAX_CUSTOM_SKINS][MAX_SKIN_ATTACH_TYPES] = { { -1, -1, ... }, ... };
  12. new Float: CustomSkinAccessPos[MAX_CUSTOM_SKINS][MAX_SKIN_ATTACH_TYPES][9];
  13.  
  14.  
  15.  
  16. // LoadCustomAccessPos
  17. for(new i = 0; i < rows; i++) {
  18.     new itemid = result[itemid];
  19.     new typeid = result[typeid];
  20.     new skinid = result[skinid];
  21.     new modelid = result[modelid];
  22.     new index = result[index];
  23.     new pos[9] = result[pos];
  24.  
  25.     if(!(0 <= itemid < sizeof(ITEM_INFO))) continue;
  26.     if(!(0 <= typeid < MAX_SKIN_ATTACH_TYPES)) continue;
  27.     if(!(312 <= skinid < 312+MAX_CUSTOM_SKINS)) continue;
  28.    
  29.     new skin_array = skinid-312;
  30.     CustomSkinAccessIndex[skin_array][typeid] = index;
  31.    
  32.     CustomSkinAccessPos[skin_array][typeid][0] = pos[0];
  33.     CustomSkinAccessPos[skin_array][typeid][1] = pos[1];
  34.     CustomSkinAccessPos[skin_array][typeid][2] = pos[2];
  35.    
  36.     CustomSkinAccessPos[skin_array][typeid][3] = pos[3];
  37.     CustomSkinAccessPos[skin_array][typeid][4] = pos[4];
  38.     CustomSkinAccessPos[skin_array][typeid][5] = pos[5];
  39.    
  40.     CustomSkinAccessPos[skin_array][typeid][6] = pos[6];
  41.     CustomSkinAccessPos[skin_array][typeid][7] = pos[7];
  42.     CustomSkinAccessPos[skin_array][typeid][8] = pos[8];
  43. }
  44.  
  45.  
  46.  
  47.  
  48.  
  49. stock SetAttachToSkin(playerid, type, model, index, materialcolor1 = 0xFFFFFFFF, materialcolor2 = 0xFFFFFFFF, bool:attempt = false)
  50. {
  51.     new skinid = pData[playerid][SKIN];
  52.    
  53.     if(IsCustomSkin(skinid)) {
  54.  
  55.         new skin_array = skinid-312;
  56.         if(!(0 <= skin_array < MAX_CUSTOM_SKINS)) return false;
  57.  
  58.         if(CustomSkinAccessIndex[skin_array][typeid] != -1) {
  59.             return SetPlayerAttachedObject(playerid, index, model,
  60.                 CustomSkinAccessIndex[skin_array][typeid],
  61.                 CustomSkinAccessPos[skin_array][typeid][0], CustomSkinAccessPos[skin_array][typeid][1], CustomSkinAccessPos[skin_array][typeid][2],
  62.                 CustomSkinAccessPos[skin_array][typeid][3], CustomSkinAccessPos[skin_array][typeid][4], CustomSkinAccessPos[skin_array][typeid][5],
  63.                 CustomSkinAccessPos[skin_array][typeid][6], CustomSkinAccessPos[skin_array][typeid][7], CustomSkinAccessPos[skin_array][typeid][8],
  64.                 materialcolor1, materialcolor2, attempt);
  65.         }
  66.        
  67.         return false;
  68.     }
  69.  
  70.  
  71. // ниже остальные аттачи на стоковые скины
  72.    
  73.     if(type == 1) {
  74.    
  75.     }
  76.     else if(type == 2) {
  77.    
  78.     }
  79.    
  80.     return false;
  81. }
  82.  
  83.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement