[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
  • Hallo Zusammen


    Ich arbeite momentan An Meinem Selfmade Autohaus & habe dabei eine Frage.


    Undzwar bekommt, Momentan der Staat für Jedes verkauftes Auto die Einnahmen.


    Aber jetz möchte ich, das man ein Autohaus kaufen kann & der Besitzer den Autohause´s das Geld bekommt


    Wie wäre es, da Am besten Möglich zusowas Hinbzubekommen?


    Mit Freundlichen Grüßen
    Dome331

  • 03BCA0


    http://www.colorhexa.com/03bca0
    Probier es mal da. ^^


    //e:
    Kann mir jemand sagen welches return falsch ist, bzw. was allgemein falsch ist?
    Wenn ich /tanken im Fahrzeug eingebe startet er den Motor. 8|



    {
    if(strcmp(cmdtext, "/m", true) == 0)
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,Rot,"Du bist in keinem Fahrzeug (oder kein Fahrer).");
    {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, Rot, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }


    else if (Tank[car] < 1)
    {
    SendClientMessage(playerid, GREY, "Der Tank ist leer. Du musst es erst wieder auftanken.");
    }


    else if (Motor[car] == false )
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true;
    SendClientMessage(playerid,GREY,"Du hast den Motor eingeschalten.");
    return 0;
    }
    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false;
    SendClientMessage(playerid,GREY,"Du hast den Motor ausgeschalten.");
    return 0;
    }
    }
    }
    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,Rot,"Du bist in keinem Fahrzeug (oder kein Fahrer).");
    new car = GetPlayerVehicleID(playerid);
    if(TanktGerade[car] == true) return SendClientMessage(playerid,Rot,"Du tankst schon!");
    if (Motor[car] == true) return SendClientMessage(playerid,Rot,"Du musst vor dem Tanken den Motor ausschalten.");
    new ZuTanken = 100-Tank[car];
    new preis = ZuTanken * BENZINPREIS;
    if (GetPlayerMoney(playerid)-preis < 0) return SendClientMessage(playerid,Rot,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid, -preis);
    SendClientMessage(playerid, GREEN, "Tanken wird gestartet.");
    SendClientMessage(playerid, HBLUE, "Preis pro Liter: 3$.");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    TanktGerade[car] = true;
    tanktimer[playerid] = SetTimerEx("Auftanken",500,true,"i",playerid);
    return 0;
    }

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

    Einmal editiert, zuletzt von Mr.DubStep ()

  • Ich bin jetzt zu y_ini von Y_Less gewechselt.
    Aber das Programm verwirrt mich total.


    Habe ein Problem beim auslesen:
    INI:myini[](name[], value[])


    Aber ich habe kein plan, was ich bei myini eintragen muss.


    Den ininamen?
    Muss ich datei denn vorheröffnen?
    Muss die .ini Endung angegeben werden?
    Muss der Name, wenn es beispielsweise ein ConfigINI ist in Anführungszeichen gesetzt werden?
    Was ist name, was value?

  • new Float:Baum[50][baumenum] = {
    {845,1799.40197754,-1606.94409180,13.56955719,0.00000000,0.00000000,70.00000000}
    };


    Hier kommt ein error. wieso? :(


    error 052: multi-dimensional arrays must be fully initialized


    Betreffende Zeile ist die Letzte mit "};"

  • Nein, 50 mögliche, da du sie ja direkt zuuuuuuuweißt.


    Wenn du das allerdings z.B. in OnGameModeIni machst, sind es maximal 50

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Kann mir jemand kurz einen Megafon Befehle erstellen? Abfrage wegen Fraktion mache ich selbst.


    Hier der Befehl:

    if(strcmp(cmdtext, "/m", true) == 0)
    {
    {
    GetPlayerName(playerid, name, sizeof(name));
    new length = strlen(cmdtext);
    new idx;
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "/m [Text]");
    return 1;
    }
    if(Fraktinfo[playerid][Fraktion] == 1)
    {
    if(Fraktinfo[playerid][fLevel] == 1)
    {
    new string[5];
    format(string, sizeof(string), "[Officer %s: %s]", name, result);
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du bist nicht in Der Fraktion!");
    return 1;
    }
    }
    return 1;
    }


    Nicht Getestet! Müsste aber Funktionieren


    MFG
    Dome331

  • C:\Dokumente und Einstellungen\DubStyle97\Desktop\Selfmade\gamemodes\Dubstep.pwn(318) : error 029: invalid expression, assumed zero
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

    Spoiler anzeigen

    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    {
    if(IsPlayerInRangeOfPoint(playerid,7.0,1004.9082,-940.9944,41.7214))
    if(IsPlayerInRangeOfPoint(playerid,7.0,1939.2225,-1772.7452,12.9431))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-91.6928,-1170.3101,2.4106))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2024.4131,156.3826,28.8359))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2411.5710,976.1568,45.4609))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1674.7457,413.9423,7.1797))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1939.7811,-1772.3312,13.3906))
    {
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,Rot,"Du bist in keinem Fahrzeug (oder kein Fahrer).");
    new car = GetPlayerVehicleID(playerid);
    if(TanktGerade[car] == true) return SendClientMessage(playerid,Rot,"Du tankst schon!");
    if (Motor[car] == true) return SendClientMessage(playerid,Rot,"Du musst vor dem Tanken den Motor ausschalten.");
    new ZuTanken = 100-Tank[car];
    new preis = ZuTanken * BENZINPREIS;
    if (GetPlayerMoney(playerid)-preis < 0) return SendClientMessage(playerid,Rot,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid, -preis);
    SendClientMessage(playerid, GREEN, "Tanken wird gestartet.");
    SendClientMessage(playerid, HBLUE, "Preis pro Liter: 3$.");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    TanktGerade[car] = true;
    tanktimer[playerid] = SetTimerEx("Auftanken",500,true,"i",playerid);
    return 1;
    }
    }
    else//Zeile 318
    {
    SendClientMessage(playerid,Rot,"Du bist nicht in der Nähe einer Tankstelle");
    }
    }

    Sobald man in einer bestimmten Zone (IsPlayerInRangeOfPoint) ist, soll man tanken können, ist man dies nicht, so soll der Text "Du bist nicht ..." in Rot angezeigt werden. Eigentlich hab ich fast Alles richtig, aber eben nur fast... :|

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

  • Else = falls nicht
    Falls nicht was?
    Du stellst garkeine frage.


    Falls er nicht in der Nähe (IsPlayerInRangeOfPoint) der o.g. Koordinaten ist... :huh:

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

  • Zitat

    (IsPlayerInRangeOfPoint)


    if(IsPlayerInRangeOfPoint(parameter))
    { //er ist in der nähe}else {//nicht in der nähe}

  • Da hab ich aber einiges vertauscht. ^^


    //e:
    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    {
    if(IsPlayerInRangeOfPoint(playerid,7.0,1004.9082,-940.9944,41.7214))
    if(IsPlayerInRangeOfPoint(playerid,7.0,1939.2225,-1772.7452,12.9431))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-91.6928,-1170.3101,2.4106))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2024.4131,156.3826,28.8359))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2411.5710,976.1568,45.4609))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1674.7457,413.9423,7.1797))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1939.7811,-1772.3312,13.3906))
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du bist nicht in der Nähe einer Tankstelle.");
    }
    ...
    Hab das jetzt so unten drunter gemacht, weiß nun nicht wirklich ob dass das war, was du meintest. :o


    C:\Dokumente und Einstellungen\DubStyle97\Desktop\Selfmade\gamemodes\Dubstep.pwn(300) : error 029: invalid expression, assumed zero
    C:\Dokumente und Einstellungen\DubStyle97\Desktop\Selfmade\gamemodes\Dubstep.pwn(300 -- 301) : warning 215: expression has no effect
    C:\Dokumente und Einstellungen\DubStyle97\Desktop\Selfmade\gamemodes\Dubstep.pwn(301) : error 001: expected token: ";", but found "else"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

    Einmal editiert, zuletzt von Mr.DubStep ()

  • if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    {//was soll die da?
    if(IsPlayerInRangeOfPoint(playerid,7.0,1004.9082,-940.9944,41.7214))
    if(IsPlayerInRangeOfPoint(playerid,7.0,1939.2225,-1772.7452,12.9431))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-91.6928,-1170.3101,2.4106))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2024.4131,156.3826,28.8359))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-2411.5710,976.1568,45.4609))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1674.7457,413.9423,7.1797))
    if(IsPlayerInRangeOfPoint(playerid,7.0,-1939.7811,-1772.3312,13.3906))
    }//<- was soll die da ?
    else
    {
    SendClientMessage(playerid,Rot,"Du bist nicht in der Nähe einer Tankstelle.");
    }


    Außerdem solltest du deine if abfrage nicht so gestallten sondern mit ||
    sprich
    if(IsPlayerInRangeOfPoint(...)||IsPlayerInRangeOfPoint(...) usw)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • So hab ich das nun ...
    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,7.0,1004.9082,-940.9944,41.7214) || IsPlayerInRangeOfPoint(playerid,7.0,1939.2225,-1772.7452,12.9431) || IsPlayerInRangeOfPoint(playerid,7.0,-91.6928,-1170.3101,2.4106) || IsPlayerInRangeOfPoint(playerid,7.0,-2024.4131,156.3826,28.8359) || IsPlayerInRangeOfPoint(playerid,7.0,-2411.5710,976.1568,45.4609) || IsPlayerInRangeOfPoint(playerid,7.0,-1674.7457,413.9423,7.1797) || IsPlayerInRangeOfPoint(playerid,7.0,-1939.7811,-1772.3312,13.3906))
    else//Zeile 293
    {
    SendClientMessage(playerid,Rot,"Du bist nicht in der Nähe einer Tankstelle.");
    }
    ...


    C:\Dokumente und Einstellungen\DubStyle97\Desktop\Selfmade\gamemodes\Dubstep.pwn(293) : error 029: invalid expression, assumed zero
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Irgendwas mach ich falsch. :pinch:

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

  • Dir fehlt eine Anweisung nach deiner if abfrage.


    Sowie das da jetzt steht wäre deine nacäshte anweisung, sofern ise erfüllt ist else, macht aber keinen sinn, da keine if abfrage davor steht

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Also muss danach das, dass er tanken soll, da dies das Nächste nach der else Abfrage wäre ..
    //e: Ich hab's und so. ^^

    [tabmenu][tab=Signatur,'http://bit.ly/1i4RY3v']

    Wie poste ich richtig?
    Nachdem du Google, die FAQ und die Suchfunktion erfolgreich ignoriert hast, erstellst du 2 bis 5 neue Themen in den falschen Unterforen mit lustigem Titel,
    zu vielen Ausrufezeichen und undeutlichem Text, unter dem sich jeder etwas anders vorstellen kann.



    Mr.Dubstep | GFX | Scripting | Hackerplace
    If Mr.DubStep don't have it, you don't need it.

    [tab=Spieler bei,'http://bit.ly/1db2jaf'][subtab=Hackerplace,'http://bit.ly/1bswN2T']


    Welch wunderschöner Hack ist heute vollzogen worden, könntest Du mir es denn sagen? Ein wunderschönes Browsergame, auch für Kleinigkeiten unterwegs. Erschaffe deinen eigenen Computer, nutze ihn um anderen das Geld zu rauben, schließe dich einem Clan an oder gründe selbst einen. Bleibe allein oder mit vielen Freunden.

    Einmal editiert, zuletzt von Mr.DubStep ()

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