Beiträge von STANLEY

    Du kannst mit der Funktion GetPlayerHealth die Lebenspunkte des Spielers abfragen. Das packst du dann in eine simple if-Abfrage. :)
    Im Wiki steht auch ein Beispiel.

    Danke, wäre dir aber noch mehr dankbar, wenn du es mir posten könntest
    weis nicht wo ich da am besten ansetzen soll. Danke schon mal :)

    Hallo liebe Leser,


    Ich bin grad dabei ein Drivein zu erstellen. Klappt auch alles wunderbar nur weis ich nicht genau
    wie ich es einfügen soll, das dass System abfrägt, ob man schon 100HP hat


    Bitte um hilfe :)


    Offensichtlich hast du bsnenter nicht definiert.
    Kannst du uns noch einmal deinen aktuellen Code schicken? Das Warning ist erstmal unbedenklich, nur ein Schönheitsfehler. Für den ersten Error würde ich gern den Code sehen.

    Code
    #include <a_samp>
    
    
    #new bsnenter;


    Bei public OnGameModeInit()

    Code
    CreatePickup(1318,1,1199.3047,-918.6964,43.1187); // LS BSN - ENTER


    Bei public OnPlayerPickUpPickup(playerid, pickupid)


    Code
    {
        if(pickupid == bsnenter)
        {
            SetPlayerPos(playerid, 375.962463,-65.816848,1001.507812);
            SetPlayerInterior(playerid, 10);
        }
        return 1;
    }


    Kommen folgende Errors
    C:\Users\CONSiDE\Desktop\SAMP SERVER\gamemodes\TEST-SCRIPT.pwn(7) : error 031: unknown directive
    C:\Users\CONSiDE\Desktop\SAMP SERVER\gamemodes\TEST-SCRIPT.pwn(233) : error 017: undefined symbol "bsnenter"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    public OnPlayerPickUpPickup(playerid, pickupid){ if(pickupid == bsnenter) { SetPlayerPos(playerid, 369.579528,-4.487294,1001.858886); SetPlayerInterior(playerid, 9); } if(pickupid == bsnexit) { SetPlayerPos(playerid, 725.7241,-1439.7871,13.5391); SetPlayerInterior(playerid, 0); } return 1;}


    Du hast als "bsnenter & bsnexit" aber du hast unten "cluckenter & cluckexit" angegeben.
    Eventuell auch mal die Error-Codes senden c:

    Das war alles richtig, so wie es da stand
    Kamen trotzdem Errors
    Werde später mal die Errors posten


    //EDIT


    Die Errors
    C:\Users\CONSiDE\Desktop\SAMP SERVER\gamemodes\TEST-SCRIPT.pwn(7) : error 031: unknown directive
    C:\Users\CONSiDE\Desktop\SAMP SERVER\gamemodes\TEST-SCRIPT.pwn(233) : error 017: undefined symbol "bsnenter"
    C:\Users\CONSiDE\Desktop\SAMP SERVER\gamemodes\TEST-SCRIPT.pwn(238) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    Hallo,


    Ich noch mal :D


    Ich habe ein problem undzwar, wenn ich mir ein Pickup erstellen möchte, wo ich dann am ende rein laufe und ich teleportiert werden soll
    funktioniert nicht so richtig.


    Ich möchte den BSN Scripten. Dafür setze ich ganz oben an "new bsnenter; & new bsnexit;
    Dann erstelle ich das Pickup unter public OnGameModeInit()


    und dann unter OnPlayerPickupPickup folgendes


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid==cluckenter)
    {
    SetPlayerPos(playerid, 369.579528,-4.487294,1001.858886);
    SetPlayerInterior(playerid, 9);
    }
    if(pickupid==cluckexit)
    {
    SetPlayerPos(playerid, 725.7241,-1439.7871,13.5391);
    SetPlayerInterior(playerid, 0);
    }
    return 1;
    }


    bekomme aber immer Errors, woran liegt es?



    MFG

    Hallo lieber Leser,


    Ich habe noch mal eine Frage
    Undzwar, wie stelle ich es an, dass wenn ich zum beispiel ein Gebäude betrete mit /Enter und dafür Geld abziehen lassen möchte.
    Wenn die Person aber kein Geld hat, dass dann im Chat steht "Du hast nicht genug Geld" ?


    Wäre nett, wenn einer helfen kann


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(!strcmp("/Enter",cmdtext,true))
    {
    if(IsPlayerInRangeOfPoint(playerid, 3.0, 739.0507, -1417.6555, 13.5234))
    {
    SetPlayerPos(playerid, 502.1714,-70.5580,998.7578);
    GameTextForPlayer(playerid,"~h~Willkommen~h~",3000,1);
    GivePlayerMoney(playerid, -120);
    SetPlayerFacingAngle(playerid, 180.9095);
    SetPlayerInterior(playerid, 11);
    return 1;
    }
    }

    Code
    public OnPlayerCommandText(playerid, cmdtext[]) {
         if(!strcmp("/enter",cmdtext,true)) {
              if(IsPlayerInRangeOfPoint(playerid, 3.0, 739.0507, -1417.6555, 13.5234)) {
                   SetPlayerPos(playerid, 203.777999,-48.492397,1001.804687);
                   SetPlayerInterior(playerid, 1);
                   return 1;
              }
         }
         return 0;
    }

    So dürfte es funktionieren :)
    Du hast das Gegenteil abgeprüft, würde theoretisch auch gehen, wenn du dahinter irgendwas returnst, aber du willst ja sicher mehrere "Dinge" über enter betretbar machen.


    Kannst du mir erklären wofür du das "Create3DTextLabel("Test",0x33CCFFAA,739.0507,-1417.6555,13.5234,30.0,0,0);" an der Stelle brauchst?
    Würde das eher im OnGameModeInit() festlegen.

    Danke, hat funktioniert :)


    Würde es auch bei "OnGameModelnit()" festlegen, aber es wird mir einfach kein 3DTextLabel angezeigt, ich weis nicht warum

    Abend liebe Leser


    Ich bin grad so nebenher am Scripten und möchte aktuell den Befehl /Enter scripten.
    Jedoch habe ich das problem, dass ich diesen Befehl von überall eingeben kann und werde dann in mein Interior Telepotiert.
    Warum, weis ich leider nicht. Normalerweise sollte es nur im Radius von 3metern gehen.


    Könnt ihr mir bitte weiterhelfen ?


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(!strcmp("/enter",cmdtext,true))
    {
    if(!IsPlayerInRangeOfPoint(playerid, 3.0,739.0507,-1417.6555,13.5234))
    Create3DTextLabel("Test",0x33CCFFAA,739.0507,-1417.6555,13.5234,30.0,0,0);
    SetPlayerPos(playerid, 203.777999,-48.492397,1001.804687);
    SetPlayerInterior(playerid, 1);
    return 1;
    }
    return 0;
    }