Beiträge von JustMe.77

    Hallo, erneut darf ich euch eine neue Include vorstellen :)



    Überblick


    Die Include gibt euch die Möglichkeit Arrays zu erstellen mit der ihr die Größe mithilfe einiger Funktionen ändern könnt.



    Funktionen




    Beispiele



    FilterScript Beispiel
    Inventar System Beispiel



    ArrayList:NewArrayList<TYPE>(capacity);
    @ <TYPE> - Is type of ArrayList, it can be FLOAT or INTEGER
    @ (capacity) - Changeable capacity on array
    Beispiel:
    new ArrayList:myList = NewArrayList<INTEGER>(5); 



    ArrayList:: Destroy (ArrayList:ArrayListID);
    @ ArrayList:ArrayListID - ID / Address of ArrayList which we want destroy
    Beispiel:
    new ArrayList:myList = NewArrayList<INTEGER>(5);


    ArrayList::Destroy(myList); 



    ArrayList::IsValid(ArrayList:ArrayListID);
    @ ArrayList:ArrayListID - ID / Address of ArrayList which we want check
    Beispiel:

    Code
    if (ArrayList::IsValid(myList))
        print ("List exist");
    else 
        print ("List not exist");



    ArrayList::Add (ArrayList:ArrayListID, value);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    @ value - Value which we want add into list
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234);
    
    
    new ArrayList:floatList = NewArrayList<FLOAT>(2);
    ArrayList::Add (floatList, 55.0564495);


    ArrayList::Remove(ArrayList:ArrayListID, index);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    @ index - Index in list
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    
    
    ArrayList::Remove (myList, 1); //123
    // this is better and safely
    ArrayList::Remove (myList, ArrayList::IndexOf (myList, 123); // This will remove index where is value '123'


    ArrayList::Size(ArrayList:ArrayListID);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    new size = ArrayList::Size (myList);
    print (size); // This will print 3


    ArrayList::Capacity(ArrayList:ArrayListID);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    
    
    new capacity = ArrayList::Capacity(myList);
    print (capacity); // This will print 5


    ArrayList::Get (ArrayList:ArrayListID, index);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    @ index - Return value from index
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    
    
    new index2 = ArrayList::Get (myList, 2);
    print (index2); // This will print 687654


    ArrayList::EnsureCapacity (ArrayList:ArrayListID, newcapacity);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    @ newcapacity - New capacity value
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5); // Capacity now is 5
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    
    
    ArrayList::EnsureCapacity (myList, 15); // Now capacity of myList is 15


    ArrayList::Clear(ArrayList:ArrayListID);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5); // Capacity now is 5
    ArrayList::Add (myList, 45641234);
    ArrayList::Add (myList, 123);
    ArrayList::Add (myList, 687654);
    
    
    // This will clear all values in this list
    ArrayList::Clear(myList);

    ArrayList::IndexOf (ArrayList:ArrayListID, value);
    @ ArrayList:ArrayListID - ID / Address of ArrayList
    @ value - Value from which we want get index
    Beispiel:

    Code
    new ArrayList:myList = NewArrayList<INTEGER>(5);
    ArrayList::Add (myList, 45641234); // index 0
    ArrayList::Add (myList, 123); // index 1
    ArrayList::Add (myList, 687654); //index 2 - we want this
    
    
    new index = ArrayList::IndexOf (myList, 687654); // now index variable is 2


    Updates



    -



    Bugs



    -



    Download


    https://github.com/Ino42O/PawnArrayList


    Credits


    Ino - Author
    Original Topic: http://forum.sa-mp.com/showthread.php?p=3710329#post3710329


    PS: Ich bin nicht der Author dieser Include, ich wurde nur darum gebeten diese hier zu teilen :) !



    if(dialogid == D_BuySkin) {
    if(response) {
    if(!IsNumeric(inputtext)){
    SendClientMessage(playerid, COLOR_RED, "Only numbers here!");
    ShowPlayerDialog(playerid, D_BuySkin, DIALOG_STYLE_MSGBOX, "Dialog buy skin", "Type your skin ID", "Buy", "Cancel");
    return 1;
    }



    SetPlayerSkin(playerid, strval(inputtext));
    pData[playerid][P_Weed] -= SKIN_PRICE;
    SaveAccount(playerid);
    }

    Hey, habe ein kleines Problem.


    Ich kann per Shop ein Skin kaufen, doch wenn ich der Runde beitrete, erhalte ich meinen alten Skin (siehe Video)



    new cQuery[256];
    SpawnPlayer(playerid);
    SetPlayerSkin(playerid, pData[playerid][P_Skin]);
    TogglePlayerAllDynamicAreas(playerid, 0);
    TogglePlayerDynamicArea(playerid, ZoneInfo[Round[r_areaid]][z_Ids], 1);
    GangZoneShowForPlayer(playerid, ZoneInfo[Round[r_areaid]][z_id], GangZoneColor); //Gangzone color 6



    format(cQuery, sizeof(cQuery), "{%06x}%s{FFFFFF} joined the round {00FF00}back!", GetPlayerColor(playerid) >>> 8, GetName(playerid));
    SendClientMessageToAll(-1, cQuery);
    IsInLobby[playerid] = false;


    Video:


    Hi, warum erstellen sich manchmal die Textlabels mehrmals?


    In OnPlayerUpdate



    new pInfosStr[90];
    {
    format(pInfosStr, sizeof pInfosStr, "{%06x}Ping: {FFFFFF}%d\n{%06x}FPS: {FFFFFF}%d\n{%06x}PL: {FFFFFF}%0.2f", GetPlayerColor(playerid) >>> 8, GetPlayerPing(playerid), GetPlayerColor(playerid) >>> 8, pFPS[playerid], GetPlayerColor(playerid) >>> 8, GetPlayerPacketLoss(playerid));
    Update3DTextLabelText(pInfos[playerid], 0xFFFFFFFF, pInfosStr);
    }


    Bild


    Hi,


    ich möchte ein kleines FilterScript veröffentlichen welches eventuell der ein oder andere gebrauchen könnte.


    Info


    Im Grunde genommen sind es Befehle die nützlich für Developer sind, weiteres steht unten.


    Um die Befehle / Funktionen ausführen zu können, muss man als RCON Admin angemeldet sein ODER man trägt im Script seinen Ingame Namen ein und muss sich nicht jedes mal einloggen.


    Beispiel:


    new LegitAdmins[][] =
    {



    {"[LnD]JustMe.77"},
    {"JustMe.77"}



    };


    Installation & Liste der Befehle / Funktionen


    Die benötigten Includes & Plugins sind hier aufgelistet. Außerdem müsst ihr ein Ordner in eurem Scriptfiles Ordner erstellen namens "Customspawns"


    https://github.com/JustMe77/De…ipt/blob/master/README.md


    Dort sind auch alle Befehle & Funktionen aufgelistet.


    Download


    https://github.com/JustMe77/Dev-Filterscript



    Credits


    JustMe.77 - Erstellung des FilterScripts
    Gammix & Unbekannte Authoren - einige Funktionen / Befehle


    Schluss


    Verbesserungsvorschläge / Fehlermeldungen sind gerne gesehen :)