#include #define CHARACTER_SKIN_SELECT (1) static PlayerSkin[MAX_PLAYERS]; hook OnPlayerConnect(playerid) { PlayerSkin[playerid] = 2; } CMD:skin(playerid, params[]) { if(IsPlayerInAnyVehicle(playerid)) return SendErrorMessage(playerid, "You need to get out of the vehicle first."); if(IsPlayerDoingAnimation(playerid)) return SendErrorMessage(playerid, "You need to stop the animation first."); if(isnull(params)) { new List:skins = list_new(); for(new i = 20001; i <= Models_CountSkins(); i++) { AddModelMenuItem(skins, i); } for(new i = 1; i <= 311; i++) { if(i == 74) continue; AddModelMenuItem(skins, i); } ShowModelSelectionMenu(playerid, "Skins", CHARACTER_SKIN_SELECT, skins); } else { Player_SetSkin(playerid, strval(params), true); } return 1; } public OnModelSelectionResponse(playerid, extraid, index, modelid, response) { if(extraid == CHARACTER_SKIN_SELECT) { if(response == MODEL_RESPONSE_SELECT) { Player_SetSkin(playerid, modelid, true); } } return 1; } stock Player_GetSkin(playerid) { return PlayerSkin[playerid]; } stock Player_SetSkin(playerid, modelid, bool:save) { if(SetPlayerSkin(playerid, modelid)) { PlayerSkin[playerid] = modelid; if(save) { new query[62]; mysql_format(MySQL_GetHandle(), query, sizeof(query), "UPDATE characters SET skin = %d WHERE id = %d", modelid, Character_GetSQLID(playerid)); mysql_tquery(MySQL_GetHandle(), query); } } }