[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
  • 1. Seit dem ich ein Anti-MoneyCheat drinnen habe speichert mein Geld i-wie nichtmehr x.x
    Die Anti-MoneyCheat Defines:
    #define GivePlayerMoneyEx(%0,%1) SetPVarInt(%0,"Money",GetPlayerMoneyEx(%0)+%1),GivePlayerMoney(%0,%1)
    #define ResetPlayerMoneyEx(%0) SetPVarInt(%0,"Money",0),ResetPlayerMoney(%0)
    #define GetPlayerMoneyEx(%0) GetPVarInt(%0,"Money")
    dann das das Geld gesavet wird wenn der Spieler off geht:
    dini_IntSet(save,"Geld",GetPlayerMoneyEx(playerid));


    2.
    Also ich hab mein /veh bisschen umgebastel das wenn locked auf 1 ist (/veh vehid farbe1 farbe2 locked)
    das das Fahrzeug abgeschlossen wird aber bekomme diesen error...
    error 035: argument type mismatch (argument 1)


    Mein code:
    dcmd_veh(playerid,params[])
    {
    if(loggedin[playerid] != true) return SCM(playerid,COLOR_WHITE,"SERVER: Du bist nicht eingeloggt!");
    if(pInfo[playerid][admin] < 3) return SCM(playerid,COLOR_GREY,"Du bist kein Admin!");
    new carid,color1,color2,locked;
    if(sscanf(params,"diiz",carid,color1,color2,locked)) return SendClientMessage(playerid,COLOR_GREY,"Benutze: /veh [Fahrzeug ID] [Farbe 1] [Farbe 2] [Locked 0/1");
    if(carid < 399 || carid > 612) return SCM(playerid,COLOR_GREY,"Inkorrekte AutoID");
    if(color1 < 0 || color1 > 252) return SCM(playerid,COLOR_GREY,"Inkorrekte FarbID");
    if(color2 < 0 || color2 > 252) return SCM(playerid,COLOR_GREY,"Inkorrekte FarbID");
    new Float:X,Float:Y,Float:Z,Float:Angle, veh;
    GetPlayerPos(playerid,X,Y,Z);
    GetPlayerFacingAngle(playerid,Angle);
    veh = CreateVehicle(carid,X,Y,Z,Angle,color1,color2,-1);
    PutPlayerInVehicle(playerid,veh,0);
    if(strcmp(locked,"1",true) == 0) //errorzeile
    {
    AutoSchloss[veh] = 1;
    }
    else {}
    return 1;
    }



    /edit Eine Frage Hinzugefügt

    Einmal editiert, zuletzt von Tommyx3 ()

  • dcmd_veh(playerid,params[])
    {
    if(loggedin[playerid] != true) return SCM(playerid,COLOR_WHITE,"SERVER: Du bist nicht eingeloggt!");
    if(pInfo[playerid][admin] < 3) return SCM(playerid,COLOR_GREY,"Du bist kein Admin!");
    new carid,color1,color2,locked[2];
    if(sscanf(params,"diiz",carid,color1,color2,locked)) return SendClientMessage(playerid,COLOR_GREY,"Benutze: /veh [Fahrzeug ID] [Farbe 1] [Farbe 2] [Locked 0/1");
    if(carid < 399 || carid > 612) return SCM(playerid,COLOR_GREY,"Inkorrekte AutoID");
    if(color1 < 0 || color1 > 252) return SCM(playerid,COLOR_GREY,"Inkorrekte FarbID");
    if(color2 < 0 || color2 > 252) return SCM(playerid,COLOR_GREY,"Inkorrekte FarbID");
    if(locked < 0 || locked > 1) return SendClientMessage(playerid,COLOR_GREY,"Benutze: /veh [Fahrzeug ID] [Farbe 1] [Farbe 2] [Locked 0/1"); //error zeile
    new Float:X,Float:Y,Float:Z,Float:Angle, veh;
    GetPlayerPos(playerid,X,Y,Z);
    GetPlayerFacingAngle(playerid,Angle);
    veh = CreateVehicle(carid,X,Y,Z,Angle,color1,color2,-1);
    PutPlayerInVehicle(playerid,veh,0);
    if(strcmp(locked,"1",true) == 0)
    {
    AutoSchloss[veh] = 1;
    }
    else {}
    return 1;
    }
    error:
    error 033: array must be indexed (variable "locked")
    Die Zeile:
    if(locked < 0 || locked > 1) return SendClientMessage(playerid,COLOR_GREY,"Benutze: /veh [Fahrzeug ID] [Farbe 1] [Farbe 2] [Locked 0/1");

  • Habs jetzt so gemacht und es kahmen keine errors:
    if(locked[1] < 0 || locked[1] > 1) return SendClientMessage(playerid,COLOR_GREY,"Benutze: /veh [Fahrzeug ID] [Farbe 1] [Farbe 2] [Locked 0/1]");
    Habs jetzt getestet aber wenn ich jetzt "/veh 522 1 1" mache ist die NRG abgesperrt aber wenn ich dann "/veh 522 1 1 0" mache ist sie offen und bei 1 auch abgesperrt(wie es sein sollte)
    wie mach ich das es dann wenn man locked einfach frei lässt die NRG nicht abgesperrt ist ?

  • ich bräuchte mal ne funktion die zb so aussieht:
    stock GetPlayerVehicleSpeed(playerid,vehicleid,speed)
    {
    //hier die sachen rein die man dafür braucht
    }
    kann mir das jmd machen?
    und am besten noch eine so:
    stock SetPlayerVehicleSpeed(playerid,vehicleid,speed)
    {
    //hier die sachen rein die man dafür braucht
    }


    //edit oder wie berechnet man von GetVehicleVelocity in kmh um?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hi,
    bräuchte nochmal Hilfe.


    error 006: must be assigned to an array


    PlayerInfo[playerid][pChar1] = tmp;


    Es ist ein Kommando, bei dem pChar1 auf tmp gesetzt wird. tmp ist in diesem Fall das, was der Spieler angegeben hat, z. B. /createchar Test_Test, dann soll tmp Test_Test sein. Ich hab es schon mit


    strmid(PlayerInfo[playerid][pChar1], tmp, 0, strlen(cmdtext), 255);


    versucht, aber dann ist pChar irgendwas wie 76 oder 81.


    MfG
    xXPhoenixXx

    How do I post wrong?


    After successfully ignoring Google, the FAQ, Stickies and the Search button, I create two to five new threads in the wrong section, with creative titles and unclear text that everybody can imagine something different from.

  • Mit format könnte es gehen, ich bin mir allerdings nicht sicher, ob ich dich richtig verstanden habe.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Zeig ma den enum zu Playerinfo wenns ein gibt, wie dort pChar1 initialisiert wird.


    Hab aber auch nen eigenes Problem: Ist ein großes multidimensionaler Array (knapp 400 zeilen) besser als 4 kleine auf 100 zeilen? Unter dem Hintergrund, dass ich die Informationen in den Arrays benutze um Objekte zu erstellen.

  • Okay, ich habe versucht, ein Charaktersystem zu erstellen. Mit /createchar [Name] erstellt man sich einen Charakter, und wenn man das tut, dann soll PlayerInfo[playerid][pChar1] = [Name] sein. Hier mal das Kommando:
    http://pastebin.com/Sh8S3u7D
    EDIT: enum pInfo:
    http://pastebin.com/1LbsrPd1

    How do I post wrong?


    After successfully ignoring Google, the FAQ, Stickies and the Search button, I create two to five new threads in the wrong section, with creative titles and unclear text that everybody can imagine something different from.

  • Ja, das Script ist ein GF-Edit.

    How do I post wrong?


    After successfully ignoring Google, the FAQ, Stickies and the Search button, I create two to five new threads in the wrong section, with creative titles and unclear text that everybody can imagine something different from.

  • Hallo


    Ich möchte die Autos die ich besitze, per Dialog anzeigen lassen. Dazu benutze ich eine for-Schleife, zähle durch und formatiere einen String. Kommt ein neues Auto dazu, nimm ich den "alten" String vorne rein (+Absatz). Jedoch geht das format so nie, die Test-SCM erscheinen


    COMMAND:autos(playerid,params[])
    {
    #pragma unused params
    SendClientMessage(playerid,COLOR_GREEN,"Test 0");
    new string[150], autoamount = 0;
    for(new vehicleid=1;vehicleid<MAX_VEHICLES;vehicleid++)
    {
    SendClientMessage(playerid,COLOR_GREEN,"Test 1");
    if(!strcmp(VehicleSystem[IsBuyableCar[vehicleid]][Owner],PlayerName[playerid]))
    {
    new vehiclemodelid = GetVehicleModel(vehicleid);
    new vehiclename = vehiclemodelid -400;
    SendClientMessage(playerid,COLOR_GREEN,"Test 2");
    //format(string,sizeof(string),"%s\n%d: %s",string,vehicleid,VehicleNames[vehiclename]);
    autoamount ++;
    }
    }
    SendClientMessage(playerid,COLOR_GREEN,"Test 3");
    if(autoamount == 0) return SendClientMessage(playerid,COLOR_GREEN,"Du besitzt keine Fahrzeuge");
    ShowPlayerDialog(playerid, AutoAnzeige, DIALOG_STYLE_MSGBOX,"Fahrzeuge", string,"Ok","Beenden");
    return 1;
    }


    Edit Formatierung

  • http://wiki.sa-mp.com/wiki/Strcat
    Versuch's mal damit.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

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