seek nephrite Posted November 15, 2020 Posted November 15, 2020 Salut, am un server de stunt si nu mi se salveaza pozitia clanului, skin-ul liderului si al membrilor, gen, ele raman doar cand sunt pe server, daca ies si intru nu se salveaza. CMD:msetskin(playerid, params[]) { if(PlayerInfo[playerid][ClanRank] < 5) return SendError(playerid, "Nu esti lider al unui clan!"); strcat(eString, "{00FF00}Set your clan member skin:"); ShowPlayerDialog(playerid, DIALOG_CLAN1, DIALOG_STYLE_INPUT, "Clan member skin", eString, "Set", "Close"); return 1; } CMD:lsetskin(playerid, params[]) { if(PlayerInfo[playerid][ClanRank] < 5) return SendError(playerid, "Nu esti lider al unui clan!"); strcat(eString, "{00FF00}Set leader skin id:"); ShowPlayerDialog(playerid, DIALOG_CLAN2, DIALOG_STYLE_INPUT, "Leader skin", eString, "Set", "Close"); return 1; } case DIALOG_CLAN1: { if(response) { //------------------------------------------------------------------ new MemberSkin; //------------------------------------------------------------------ if(sscanf(inputtext, "i", MemberSkin)) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); if(MemberSkin > 300 || MemberSkin < 0) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); //------------------------------------------------------------------ if(PlayerInfo[playerid][ClanID] == PlayerInfo[playerid][ClanID]) if(PlayerInfo[playerid][ClanRank] < 2) SetPlayerSkin(playerid, MemberSkin), PlayerInfo[playerid][ClanSkinM] = MemberSkin; format(eQuery, sizeof(eQuery), "UPDATE `clans` SET `ClanMemberSkin` = '%s' WHERE `ID` = %d", PlayerInfo[playerid][ClanSkinM], PlayerInfo[playerid][ClanID]); mysql_tquery(DB_Connect, eQuery, "", "" ); } else if(PlayerInfo[playerid][ClanID] == 0) ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan. {FF0000}(1-300)", "Select", "Exit"); } case DIALOG_CLAN2: { if(response) { new BossSkin; //------------------------------------------------------------------ if(sscanf(inputtext, "i", BossSkin)) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Leaders Skin", "{00FF00}Please Insert Boss Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); if(BossSkin > 300 || BossSkin < 0) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Leaders Skin", "{00FF00}Please Insert Boss Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); //------------------------------------------------------------------ format(eQuery, sizeof(eQuery), "UPDATE `clans` SET `ClanLeaderSkin` = '%s' WHERE `ID` = %d", PlayerInfo[playerid][ClanSkinL], PlayerInfo[playerid][ClanID]); mysql_tquery(DB_Connect, eQuery, "", "" ); if(PlayerInfo[playerid][ClanID] == PlayerInfo[playerid][ClanID]) if(PlayerInfo[playerid][ClanRank] >= 2) SetPlayerSkin(playerid, BossSkin), PlayerInfo[playerid][ClanSkinL] = BossSkin; } else if(PlayerInfo[playerid][ClanID] == 0) ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Leaders Skin", "{00FF00}Please Insert Boss Skin of the Clan. {FF0000}(1-300)", "Select", "Exit"); }
shane Posted November 15, 2020 Posted November 15, 2020 Salut @seek nephrite, In primul rand, ai gresit sectiunea. Daca dai scroll putin mai jos in categoria 'Ajutor Scripting', ai un buton mare albastru 'Ask a question'. In alta ordine de idei, din cate vad, skinul nu se salveaza deoarece tu probabil ai randul ClanMemberSkin din tabelul clans, din baza de date, in format INT (intiger, sau numar mai exact), iar tu ii faci salvarea in script in format String (text mai exact). Pentru a face salvarea corecta, trebuie sa convertesti textul pe care il introduci in dialog, in numar, folosind functia "strval". Iti las mai jos un exemplu pe baza scriptului tau, iar de acolo te descurci tu. Daca ai facut singur scriptul de mai sus, nu esti chair incepator. case DIALOG_CLAN1: { if(response) { //------------------------------------------------------------------ new MemberSkin = strval( inputtext ); //------------------------------------------------------------------ if(MemberSkin > 300 || MemberSkin < 0) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); //------------------------------------------------------------------ if(PlayerInfo[playerid][ClanID] == PlayerInfo[playerid][ClanID]) if(PlayerInfo[playerid][ClanRank] < 2) SetPlayerSkin(playerid, MemberSkin), PlayerInfo[playerid][ClanSkinM] = MemberSkin; mysql_format(DB_Connect, eQuery, sizeof(eQuery), "UPDATE `clans` SET `ClanMemberSkin` = '%d' WHERE `ID` = %d", MemberSkin, PlayerInfo[playerid][ClanID]); mysql_tquery(DB_Connect, eQuery, "", "" ); } else if(PlayerInfo[playerid][ClanID] == 0) ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan. {FF0000}(1-300)", "Select", "Exit"); } Apropo, daca linia asta ("else if(PlayerInfo[playerid][ClanID] == 0) ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan. {FF0000}(1-300)", "Select", "Exit");"), reprezinta restrictia urmatoare: Daca jucatorul nu este intr-un clan. [..] Atunci, ar trebui sa faci dialogul in felul urmator: case DIALOG_CLAN1: { if( !response ) return true; if(PlayerInfo[playerid][ClanID] == 0) return true; //------------------------------------------------------------------ new MemberSkin = strval( inputtext ); //------------------------------------------------------------------ if(MemberSkin > 300 || MemberSkin < 0) return ShowPlayerDialog(playerid, 123, DIALOG_STYLE_INPUT, "{FF0000}ERROR: {FFFFFF}Setting Clan Members Skin", "{00FF00}Please Insert Member Skin of the Clan {FF0000}(1-300)", "Select", "Exit"); //------------------------------------------------------------------ if(PlayerInfo[playerid][ClanID] == PlayerInfo[playerid][ClanID]) if(PlayerInfo[playerid][ClanRank] < 2) SetPlayerSkin(playerid, MemberSkin), PlayerInfo[playerid][ClanSkinM] = MemberSkin; mysql_format(DB_Connect, eQuery, sizeof(eQuery), "UPDATE `clans` SET `ClanMemberSkin` = '%d' WHERE `ID` = %d", MemberSkin, PlayerInfo[playerid][ClanID]); mysql_tquery(DB_Connect, eQuery, "", "" ); } Daca te-am ajutat =>
seek nephrite Posted November 15, 2020 Author Posted November 15, 2020 si cu pozitia clanului? am pus la onplayerspawn if(PlayerInfo[playerid][ClanID] != 0) { if(PlayerInfo[playerid][ClanRank] == 5) { SetPlayerSkin(playerid, PlayerInfo[playerid][ClanSkinL]); GivePlayerMultiWeapons(playerid, PlayerInfo[playerid][ClanWeap1], 500, PlayerInfo[playerid][ClanWeap2], 500, PlayerInfo[playerid][ClanWeap3], 500, PlayerInfo[playerid][ClanWeap4], 500, PlayerInfo[playerid][ClanWeap5], 500, PlayerInfo[playerid][ClanWeap6], 500); SetPlayerPos(playerid, PlayerInfo[playerid][ClanX], PlayerInfo[playerid][ClanY], PlayerInfo[playerid][ClanZ]); } else if(PlayerInfo[playerid][ClanRank] < 5) { SetPlayerSkin(playerid, PlayerInfo[playerid][ClanSkinM]), GivePlayerMultiWeapons(playerid, PlayerInfo[playerid][ClanWeap1], 500, PlayerInfo[playerid][ClanWeap2], 500, PlayerInfo[playerid][ClanWeap3], 500, PlayerInfo[playerid][ClanWeap4], 500, PlayerInfo[playerid][ClanWeap5], 500, PlayerInfo[playerid][ClanWeap6], 500); SetPlayerPos(playerid, PlayerInfo[playerid][ClanX], PlayerInfo[playerid][ClanY], PlayerInfo[playerid][ClanZ]); } }
seek nephrite Posted November 15, 2020 Author Posted November 15, 2020 am revenit, am rezolvat cu pozitia clanului. Skin-urile la fel, nu se salveaza:))
hanako Posted November 15, 2020 Posted November 15, 2020 arata-mi te rog cum ai in baza de date ClanMemberSkin
seek nephrite Posted November 15, 2020 Author Posted November 15, 2020 in ce fel sa iti arat, sa iti fac poza sau?
seek nephrite Posted November 15, 2020 Author Posted November 15, 2020 Am rezolvat, la loadclandetails aveam trecut if(playerinfo[playerid][rank] == 2 setplayerskin(clanleaderskin), eu avand definit liderul la rank 5, nu la 2. Multumesc oricum pentru raspunsuri. T/C?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now