Beiträge von PrinceOfBelvedair

    Ok, fangen wir mal an :D


    Also:


    Du hast eine Position, am Automaten etc. dann machst du einen Befehl:


    if(strcmp(cmdtext,"/ticket",true)==0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,7,Deine Koordinaten))return SendClientMessage(playerid,ROT, "Du bist an keinem Ticketschalter!"); //wenn er nicht am Ticketschalter ist 7= maximale Entfernung zum Automaten
    Attach3DTextLabelToVehicle(TextID,vehicleid, 0.0, 0.0, 2.0);
    TextID = Create3DTextLabel( "Ticket gekauft", 0xFF0000AA, 0.0, 0.0, 0.0, 50.0, 0, 1 ); // TextID oben im Script noch definieren.
    SendClientMessage(playerid,DeineFarbe,"Du hast dir erfolgreich ein Ticket gekauft.");
    }


    Jetzt gibt es mehre Möglichkeiten das Label wieder zu entfernen, entweder du stellst einen Timer das man nur eine bestimmte Zeit parken kann, oder du zäunst den ganzen Parkplatz ein und wenn man raus fährt halt per MoveObject wenn er z.B. in einen Checkpoint fährt das dass Label dann wieder weg gemacht wird.


    //Alles im Forum geschrieben, keine Garantie ob es funktioniert ;D


    //edit code eingerückt

    Hallo,


    Ich habe versucht das man am Haus spawnt, es geht aber leider nicht, man landet immer an diesem Bauernhof, also am Map Mittelpunkt, weiß aber nicht warum :(


    Spawn:


    for(new hausid; hausid<200; hausid++)
    SetPlayerPos(playerid,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z]);



    Stock:


    stock LoadHaus(hausid)
    {
    new pfad[50];
    format(pfad,50,"/haus/%d.txt",hausid);
    if(!fexist(pfad))return 0; //überprüft ob die Datei existiert, wenn nicht wird 0 zurückgegeben


    HausInfo[hausid][haus_x] = dini_Float(pfad,"x"); // hier laden wir die Werte
    HausInfo[hausid][haus_y] = dini_Float(pfad,"y");
    HausInfo[hausid][haus_z] = dini_Float(pfad,"z");
    HausInfo[hausid][haus_preis] = dini_Int(pfad,"preis");
    HausInfo[hausid][haus_innenraum] = dini_Int(pfad,"innenraum");
    format(HausInfo[hausid][haus_besitzer],32,"%s",dini_Get(pfad,"besitzer"));
    HausInfo[hausid][haus_pickup] = CreatePickup(1273 ,23,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],0); //erstellt ein Pickup an den Hauskoordinaten
    new s[128]; //Hier erstellen wir einen neuen String, diesen formatieren wir mit den nötigen Infos:
    format(s,128,"{E01B1B}****Haus****\n{FA7D00}Besitzer: %s\n{0AFA2A}Kaufpreis: %d$",HausInfo[hausid][haus_besitzer],HausInfo[hausid][haus_preis]); //dürfte wohl klar sein
    HausInfo[hausid][haus_label] = Create3DTextLabel(s,0xFF00FF,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],20,0,1); //Hier erstellen wir das Label. Die ID wird in HausInfo[hausid][haus_label] gespeichert (das ist wichtig für uns, da wir das Label später wieder löschen wollen!)
    return print("Das Haus wurde erfolgreich geladen");
    }

    Hallo, ich habe dieses Autohaus System: [ SCRIPTING ] Autohaus + Autokauf System


    und habe den Preis in Score umgeschrieben und die Abfrage so gemacht:
    if(GetPlayerScore(playerid) < Buycars[i][CarScore])


    Aber es funktioniert ingame nicht, auch wenn man Score 0 hat kann man ein Car kaufen obwohl es ab Score 900 eingestellt ist.

    Hallo,


    Ich bin gerade dabei das man am Haus spawnt wenn man sich einloggt, allerdings bekomme ich Erros..


    SetPlayerPos(playerid,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z]); //Die Zeile unter OnPlayerSpawn


    der Error:


    C:\Users\Beny\Desktop\FUN.pwn(6490) : error 017: undefined symbol "hausid"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    Was mich nur wundert ist, das im ganzen Script nicht Hausid definiert ist, aber es trotztem in anderen Zeilen funktionier, z.B.


    stock LoadHaus(hausid)
    {
    new pfad[50];
    format(pfad,50,"/haus/%d.txt",hausid);
    if(!fexist(pfad))return 0; //überprüft ob die Datei existiert, wenn nicht wird 0 zurückgegeben


    HausInfo[hausid][haus_x] = dini_Float(pfad,"x"); // hier laden wir die Werte
    HausInfo[hausid][haus_y] = dini_Float(pfad,"y");
    HausInfo[hausid][haus_z] = dini_Float(pfad,"z");
    u.s.w..

    Ne, das ist alles an Code, also wenn es ihm nicht gehört soll er nur rausgeworfen werden, aber nicht aus jedem Car was ingame steht, sondern halt nur bei den Kaufbaren.


    Und es gibt auch nur ein Fahrzeug zu kaufen, also dürfte es etwas einfacher sein :D


    Aber ich glaube ich werde mich schwer tun deine Erklärung in die Praxis umzusetzen :rolleyes:


    Trotztem Danke für die Hilfe :)

    Hallo, ich habe dieses Autohaus System: [ SCRIPTING ] Autohaus + Autokauf System


    Nun wollte ich es unter OnPlayerStateChange so machen das man aus dem Car geworfen wird wenn man nicht der Besitzer ist, allerdings fliegt man aus jedem Car und kann nur sein eigenes Fahren, also man kann auch nicht die Cars fahren z.B. für Fraktionen etc. man wird immer rauf geworfen :(


    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i < 1; i++)
    if(GetPlayerVehicleID(playerid) != Spielercar[playerid][i]) return RemovePlayerFromVehicle(playerid);
    return 1;
    }


    Wie mache ich das dass man nur aus dem Car geworfen wird wenn es einem nicht gehört?

    SetPVarInt(killerid,"Bank",GetPlayerInt(killerid,"Bank")+playercash));



    C:\Users\Beny\Desktop\FUN.pwn(6639) : error 017: undefined symbol "GetPlayerInt"
    C:\Users\Beny\Desktop\FUN.pwn(6639) : error 029: invalid expression, assumed zero
    C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.


    Die anderen funktionieren ganicht :(

    Hallo,


    Ich möchte wenn jemand gekillt wird, das der Betrag der playerid, also das was er auf der Hand hat, direkt auf das Konto der Killerid gehen, aber ich bekomme Errors, weiß aber nicht wieso.. :(


    if(killerid == INVALID_PLAYER_ID)
    {
    ResetPlayerMoney(playerid);
    }
    else
    {
    playercash = GetPlayerMoney(playerid);
    if(playercash > 0)
    {
    GetPVarInt(killerid, "Bank") +playercash); //Hier sind die Errors
    ResetPlayerMoney(playerid);
    }
    }


    Bank Befehl /Einzahlen:


    ocmd:einzahlen(playerid,params[])
    {
    if(!IsPlayerInRangeOfPoint(playerid,7,-28.2220,-89.2535,1003.5469))return SendClientMessage(playerid,ROT, "Du musst im 24/7 in der nähe vom BSN sein!");
    new betrag,string[128];
    if(sscanf(params,"d",betrag)) return SendClientMessage(playerid,COLOR_ORANGE,"Benutze: /Einzahlen [Betrag]");
    if(GetPlayerMoney(playerid) < betrag) return SendClientMessage(playerid,rot,"Du hast nicht soviel Geld auf der Hand!");
    SetPVarInt(playerid, "Bank", GetPVarInt(playerid, "Bank") +betrag);
    GivePlayerMoney(playerid, -betrag);
    format(string, 128, "Du hast %i$ eingezahlt!", betrag);
    SendClientMessage(playerid,COLOR_GREEN,string);
    SpielerSpeichern(playerid);
    return 1;
    }


    Und Die Errors:


    C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
    C:\Users\Beny\Desktop\FUN.pwn(6639) : error 001: expected token: ";", but found ")"
    C:\Users\Beny\Desktop\FUN.pwn(6639) : error 029: invalid expression, assumed zero
    C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    Hallo,


    Ich möchte gerne für meinen Server ein Top 5: Textdraw machen, ich weiß das ich eine Schleife für alle Spieler durchgehen muss und dann GetPlayerScore, allerdings weiß ich nicht wie ich den HÖCHSTEN WERT auslesen kann undzwar aus einer Dini Datei, also das man alle Spieler durchgeht auch wenn sie gerade nicht online sind..


    Ich hoffe jemand kann mit weiter helfen.


    Mfg: PrinceOfBelvedair