[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Abend,


    hat jemand eine Idee weshalb ich hier ein Error bekomme?



    stock Float:GetItemWeight(itemid, menge)
    {
    new Float:weight = 0.0;
    if(menge > 0)
    if(itemid >= 1 && <= 46) {
    weight = menge + (menge * Items[itemid][itemMunitionWeight]);
    }
    weight = menge * Items[itemid][itemWeight]; // error 010: invalid function or declaration
    }
    return weight;
    }

  • Klar

    enum enum_Items
    {
    itemID,
    itemName[36],
    Float:itemWeight,
    Float:itemMunitionWeight
    }
    new Items[][enum_Items] = {
    {0, "LEER", 0.0, 0.0},
    {1, "Wasserflasche", 0.75, 0.0},
    {2, "Mariuana", 0.01, 0.0},
    {3, "AK-47", 4.5, 0.096},
    {4, "Desert Eagle", 2.5, 0.075},
    {5, "Schrotflinte", 4.5, 0.3},
    {6, "Scharfschützengewehr", 8.5, 0.46}
    };

  • Hab den Code mal so getestet, ich bekomme da keine Fehler ^^


    Hast du eventuell in einem anderen Enum / Globalen-Variable schon den Namen itemWeight vewendet? ^^

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Gibt es eigentlich die Moeglichkeit XOR Operationen zu realisieren?


    Weiss nicht ob das geht, kenne nur das hier 0101 XOR 1011 = 1110
    Kann man dann auch z.B. mit arrays machen? array1={0101} XOR array2={1011} = array3={1110} ? Also wie kann man sowas in PAWN realisieren?


    Weiterhin habe ich das Problem:


    Wenn ich Pi definiere new const Float:pi=3.14; und dann in main ausgeben will mit printf("%d",pi); warum erhalte ich da einen wert von ueber 100000?

    Einmal editiert, zuletzt von Sub Royal ()

  • Guten Abend zusammen,
    ich habe da ein kleines Problem mit meinem Script (mal wieder), sobald man sich Registriert hat, soll man 500$ bekommen, das gebe ich ihn auch,
    aber sobald er Spawnt, wird sein Geld wieder auf "Null" gesetzt.



    SendClientMessage(playerid, -1, "["#FARBE_ORANGE"INFO"#FARBE_WEISS"]: Du hast als Geschlecht ["#FARBE_LILA"Weiblich"#FARBE_WEISS"] ausgewählt!");
    sInfo[playerid][sGeschlecht] = 2;
    sInfo[playerid][sSkin] = 12;


    ShowPlayerLoginScreen(playerid, false);
    SetSpawnInfo(playerid, 0, 0, 2099.6208, -1803.3022, 13.5546, 134.9301, 0, 0, 0, 0, 0, 0);
    SpawnPlayer(playerid);
    LoadPlayerWorld(playerid);

    GivePlayerMoney(playerid, 500);
    SetPlayerScore(playerid, 1);
    sInfo[playerid][sEingeloggt] = true;


    Hoffe ihr könnt mir dabei Helfen, finde den Fehler leider nicht.
    Das Level aber zB wird Gesetzt.


    MfG.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Ich gruesse euch kleine Frage
    Habe so ein tolles Include und Plugin namens sscanf gefunden.
    Leider finde ich Anwendungen nur mit dcmd zcmd etc. aber nicht mit den normalen Stuff


    Kann jemand mir eventuell ein Beispiel machen, wie und ob ich sscanf hier bei diesem Befehl sinnvoll einsetzen kann?



    Versuche mich gerade an einen /givecash command, aber die Sache mit 2 Integern bereitet mir Probleme, und da dachte ich dass sscanf mir Abhilfe schaffen koennte

  • Guten Tag ich habe mal eine frage ich habe ein Textdraw für mein Geld.
    Das Problem wenn ich das Geld an die Richtige Position setze dann passt es wird mein Geld Größer schiebt es sich nach hinten weiter.

  • Kann man dann auch z.B. mit arrays machen? array1={0101} XOR array2={1011} = array3={1110} ? Also wie kann man sowas in PAWN realisieren?

    Ja, das geht sehr gut in Pawn :)


    C
    new a=0b0101, b=0b1011;
    new c = a^b;
    printf("0b%04b",c);


    Mit dem PI, du musst %f nutzen :)


    Ich empfehle dir übrigens ein MAKRO :)



    #define PI 3.14159265359


    //Nutzung:
    printf("Pi: %f",PI);


    PS: Nutze ocmd/zcmd (kein dcmd) ist schneller und schau dir die basics von der sscanf Anwendung an :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Beitrag von NikBazinga! ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Danke schonmal Kaliber, das werde ich mal so uebernehmen :D
    Also wenn ich das richtig verstehe kann ich sscanf nur in Verbindung mit anderen Kommandodingern nutzen wie ocmd oder dcmd?



    Die Assemblervariante gefaellt mir super!


    Schade :( Bin eigentlich super zufrieden mit der C Syntax


    Weil wenn ich das richtig sehe kriege ich sonst kein params[] sondern nur cmdtext[] durch OnPlayerCommandText


    Oder wenn ich mist Lage Re entschuldigt :D Hat jemand eventuell ein Beispiel mit Strtok wie ich es hinkriege 2 oder mehr integer da rauszuholen aus einem Befehl ?

    2 Mal editiert, zuletzt von Sub Royal ()

  • Seitdem ich bei Register System mit anklickbaren Textdraws erstellt habe, funktioniert mein anderes SKinshop Textdraw nicht mehr. Jemand Idee wieso?
    Und zwar dies hier...


  • do.de - Domain-Offensive - Domains für alle und zu super Preisen