[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
    • Offizieller Beitrag


    Nein, der Name soll unter OnDialogResponse beim Klicken auf ein bestimmtes listitem ausgegeben werden. ID wäre aber besser :whistling:

  • Heeeeey :)


    Habe folgendes Problem :( Habe mir nun viele Tutorials angeschaut was Fraktions Befehle angeht wie Z.b /invite /unvinte jedoch kann ich diese ganzen dinge iwie nicht in mein Script einbauen :(. Es kommt bei mir immer du bist kein Leader der Fraktion weiß nicht woran es liegt :( ?


    Also bei mir sind meine Fraktionen so aufgebaut.


    Ich habe die Spawns der Fraktionen und das sie in den Stats angezeigt werden. einmal im Ocmd /Stats und dann die Fraktionsspawns. Ich wollte dieses einfügen:





    ocmd:invite(playerid,params[]) { if(GetPVarInt(playerid,"Leader") == 1) { new fraktname[64]; new pID,string[280]; if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_GREY,"Benutze: /invite [Spieler/ID]"); format(string,sizeof(string),"Du wurdest von Leader %s in die Fraktion: %s eingeladen",SpielerName(playerid),fraktname); SendClientMessage(pID,COLOR_LIGHTBLUE,string); format(string,sizeof(string),"Du hast %s in deine Fraktion: %s eingeladen",SpielerName(pID),fraktname); SendClientMessage(playerid,COLOR_LIGHTBLUE,string); ShowPlayerDialog(pID,DIALOG_LSPDINVITE,DIALOG_STYLE_MSGBOX,"Invite","Du wurdest in eine Fraktion eingeladen.\nUm beizutreten dürcke *Beitreten* wenn nicht *Abbrechen*","Beitreten","Abbrechen"); } else { SendClientMessage(playerid,COLOR_RED,"Du bist kein Leader!"); } return 1; }


    Also ich wollte das so einfügen jedoch kommt immer du bist kein Leader :(


    Hoffe es kann mir jemand helfen ?

  • Hmmmmm,


    Also das wird in meiner Userdatei angezeigt:


    Passwort=---------
    Level=0
    Geld=155552354
    AdminLevel=5
    Fraktion=1
    Baned=0
    Skin=106



    Die Fraktionskassen usw klappen auch alles. Skins auch.


    Ich bin mir nur selber nicht sicher weil, ich habe oft gesehen das manche [PLeader] [PMember] oben definiert haben was bei mir nicht so der fall ist :). Also bei mir wird die Fraktion in den Stats gezeigt. Der Spieler Spawnt an der jeweiligen Fraktion und ich kann die Skins aussuchen. Aber ich habe weder ein Rangsystem oder einen Unterschied ob ich Member oder Leader bin. Also ich kann durch den Befehl /makeleader mir eine Fraktion geben ,jedoch ob ich dann wirklich Leaderin bin weiß ich nicht hihi Sry ich weiß nicht sehr hilfreich. :(

  • Jemand ne idee wiso bei den
    format(query, sizeof(query), "INSERT INTO `wbb1_1_user` (userID, boardLastVisitTime,boardLastActivityTime,boardLastMarkAllAsReadTime,posts) VALUES ('%d','%d','%d','%d','0')", strval(GetUserData(name, "userID")),TimestampNow(),TimestampNow(),TimestampNow());
    sowas rauskommt?

    Zitat

    Error (0): Failed to exeute query. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '5' at line 1.

    All in all it's just another brick in the wall

  • Wie so geht das Updaten von den sachen in der Datenbank nicht??


    Spoiler anzeigen

    [pwn]ocmd:fpark(playerid, params[])
    {
    for(new i = 0; i < MAX_FRAGCARS; i++) {
    new query[128];
    if(GetPlayerVehicleID(playerid) == FrakCarInfo[i][CarID] && FrakCarInfo[i][FrakID] == PlayerInfo[playerid][pLeader]) {
    GetVehiclePos(FrakCarInfo[i][CarID],FrakCarInfo[i][fapX],FrakCarInfo[i][fapY],FrakCarInfo[i][fapZ]);
    GetVehicleZAngle(FrakCarInfo[i][CarID],FrakCarInfo[i][fapA]);
    format(query, sizeof(query), "UPDATE `fraktionscars` SET `FrakPosX`='%f',`FrakPosY`='%f',`FrakPosZ`='%f',`FrakPosA`='%f' WHERE `id`='%d'",FrakCarInfo[i][fapX],FrakCarInfo[i][fapY],FrakCarInfo[i][fapZ],FrakCarInfo[i][fapA],i);
    mysql_query(query);
    SCM(playerid,Gruen,"Du hast das Fahrzeug erfolgreich gepark!");
    }
    }
    return 1;
    }[/pwn
    ]

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


    • Offizieller Beitrag

    Moin,
    woran liegt es, dass die Spieler nicht sehen, wenn sich ein anderer normal bewegt? Nur wenn derjenige mit SetPlayerPos bewegt wird?
    Ansonsten stehen die Spieler nur rum, aber schreiben, Commands etc. geht noch. Man selber kann sich aber wie normal bewegen, nur die anderen Spieler stehen nur rum.
    Wurde bereits mehrmals mit verschiedensten Spielern getestet, ist das eventuell ein Scriptbug?

  • Yo Sry, ist bestimmt ganz einfach zu lösen aber ich weiß nicht wie :S


    Habe diesen Code

    new string1[3];
    format(string1, sizeof(string1), "%d",TeamScore1a);
    TeamScore1=TextDrawCreate(24.000000, 399.000000, string1);


    Wie kann ich denn erreichen das auch wenn TeamScore1a == 1 ist, das TextDraw es mit drei Stellen ( 001 ) angibt..
    Wäre echt cool wenn mir das einer sagen könnte^^


    Viele Grüße

  • Hab hier ein Problem: Wenn es dazu kommt, dass RemovePlayerWeapon ausgeführt wird, wird die Waffe mit ID 37 (Flammenwerfer) aus dem Inventar gelöscht, jedoch kann man nicht mehr auf andere Waffen scrollen. Man springt sozusagen immer zur Faust zurück. Hat jemand ne Idee, wie sich das lösen lässt? Oder gibt es vielleicht eine andere Möglichkeit, eine einzelne Waffe zu löschen, ohne dass es zu Problemen kommt?


    if (armed[playerid] == 37) {


    GameTextForPlayer(playerid, "Do not use this gun while Antilag-Hit-Detection is enabled",2000,4);
    RemovePlayerWeapon(playerid,37);


    }

    Hier ist der stock von RemovePlayerWeapon, hab den auch hier in irgendeinem Thread gefunden.

    stock RemovePlayerWeapon(playerid, weaponid)
    {
    new plyWeapons[12];
    new plyAmmo[12];
    for(new slot=0; slot != 12; slot++)
    {
    new wep, ammo;
    GetPlayerWeaponData(playerid, slot, wep, ammo);


    if(wep != weaponid)
    {
    GetPlayerWeaponData(playerid, slot, plyWeapons[slot], plyAmmo[slot]);
    }
    }
    ResetPlayerWeapons(playerid);
    for(new slot = 0; slot != 12; slot++)
    {
    GivePlayerWeapon(playerid, plyWeapons[slot], plyAmmo[slot]);



    }
    }



    Greets

  • Wie sorge ich dafür, dass bei der Class selection (InGame) ein Text für diese Gruppe angezeigt wird ?
    Habe gTeam gewählt.


    Beispiel wie ich es meine:


    Man drückt auf die Pfeiltasten und überm Skin oder so soll dann z.B Terrorists stehen.


    Wie mache ich das ? Das gTeam habe ich bereits erstellt. Mir fehlt nurnoch der Name des
    Teams über dem Skin steht.


    mfg,


    Sm0ke

  • nach mehreren Stunden verzweiflung poste ich hier nun auch mal etwas. Vorweg gesagt: Habe mich nun mehrere Monate nicht mit Pawn beschäftigt, weshalb es sicher ein Leihenfehler ist
    Folgender Code gibt:

    Spoiler anzeigen
    main()
    {
    new stringbla = "1";//28
    new zeilennummer="1";//29
    for(new id=0;id<256; id++)
    {
    printf("%s", MD5_Hash(stringbla));//32
    dini_Set("md5.ini", zeilennummer, MD5_Hash(stringbla));//33
    stringbla ++;
    zeilennummer++;
    }
    }


    Gibt aus:

    Spoiler anzeigen
    Zeile (28) : Array-Index fehlt (bspw. Array[1], Name: "-unknown-")
    Zeile (29) : Array-Index fehlt (bspw. Array[1], Name: "-unknown-")
    Zeile (32) : Falscher Variablentyp als Parameter (Parameter #1)
    Zeile (33) : Falscher Variablentyp als Parameter (Parameter #2)


    Versuch ich die beiden Variablen als Array zu setzen gibt er aus:

    Spoiler anzeigen

    Code:
    main()
    {
    new string[]="1";
    new zeilennummer[]="1";
    for(new id=0;id<256; id++)
    {
    printf("%s", MD5_Hash(string));
    dini_Set("md5.ini", zeilennummer, MD5_Hash(string));
    string[] = string[]+"1";//34
    zeilennummer[] = zeilennummer[]+"1";
    }

    Spoiler anzeigen
    }Zeile (34) : Ungültiger Befehl
    Zeile (34) : Ungültiger Befehl
    Zeile (34) : Array-Index fehlt (bspw. Array[1], Name: "-unknown-")
    Zeile (34) : Zuviele Fehler in einer Zeile


    Wäre nett wenn mir jemand helfen könnte( Bitte nicht den Sinn hinter dem ganzen Verstehen es ist für nen kleinen PHP Code wobei ich unmengen von MD5 Hashs brauche)


    MfG

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern

  • Ohne erstmal unnötige Code zu schicken


    Ich hab nen public mit nem Tacho und einmal wo anders noch eine Statusanzeuge bzw. Healthanzeige eines Autos.
    Der Schaden wird auch normal angezeigt nur da wo der Tacho stehen sollte wechselt es immer zwischen Car Health und Tacho.
    Der Tacho kommt immer nur ganz kurz wenn der Timer aktuallisiert wird (250 millisekunden)
    Ansonsten steht da die ganze Zeit die Car Health.


    Hatte den Tacho auch schonmal bei OnPlayerUPdate mit drin wo die Health abfrage auch ist, da war es weg aber der Tacho ging total behindert und nur bis 10.
    War also auch keine Lösung.
    Ich weiß echt nicht woran das liegt.


    - Tomsen

  • Hast du Teamviewer wäre einfacher?

  • Ja aber mir wären potenzielle Lösungsvorschläge gerade lieber von Leute die sowas villt. schonmal hatten und wüssten woran sowas liegen kann.
    Gibt da ja nicht alzuviele Möglichkeiten. Davon abgesehen bin ich grad in php. ^^


    - Tomsen