"/enter" & "/exit" Problem

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
  • Erstmal guten Tag an alle hier! :D


    Ich habe ein Problem mit meinem "/enter" & "/exit" Befehlen. (Arbeite Momentan an einem Selfmade Script...)
    Da ich recht neu im Scripting-Bereich bin suche ich hier Hilfe. :)


    Zum Anfang, mein Code unter "public OnPlayerCommandText":

    //Enter & Exit
    if (strcmp("/enter", cmdtext, true, 10) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 1555.3000488281, -1675.6999511719, 15.800000762939)) //LSPD Enter
    {
    SetPlayerPos(playerid,246.80000305176, 62.900001525879,1002.515625);
    SetPlayerInterior(playerid,6);
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1462.4000244141, -1011.5, 26.799999237061)) // Bank Enter
    {
    SetPlayerPos(playerid,1461.8000488281,-1009,26.89999961853);
    return 1;
    }
    return 1;
    }


    if (strcmp("/exit", cmdtext, true, 10) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 246.80000305176, 62.900001525879, 1001.515625)) //LSPD Exit
    {
    SetPlayerPos(playerid,1555.3000488281, -1675.6999511719, 15.800000762939);
    SetPlayerInterior(playerid,0);
    return 1;
    }
    else if(IsPlayerInRangeOfPoint(playerid, 2.0, 1461.8000488281,-1009,26.89999961853)) //Bank Exit
    {
    SetPlayerPos(playerid,1462.4000244141, -1011.5, 26.799999237061);
    return 1;
    }
    return 1;
    }


    Als ich nur einen Eingang & Ausgang hatte ging alles noch. Nachdem ich jetzt die zweiten reingeschrieben habe, funktioniert alles bis auf den 1. Ausgang, also den beim LSPD. (Es kommt auch nicht keine Fehlermeldung, als wenn der Server den Command nicht kennt, sondern einfach garnichts und es passiert auch nichts.)
    Der Rest geht.
    Das verwundert mich ein bisschen, und da ich wie gesagt noch Anfänger bin weiß ich gerade nicht weiter.
    -->Geht es vielleicht auf Dauer nicht mit "IsPlayerInRangeOfPoint" oder habe ich etwas vergessen/falsch gemacht?


    Hoffe es kann mir einer von den vielen schlauen Köpfen hier im Forum helfen... Danke im Vorraus! :)



    Mfg,
    Maik

  • setplayerinterior vergessen, beim 2.

    Muss das da sein? Ich dachte ich brauch das nicht, weil das einfach nur durch die Wand in die Bank hinein teleportiert, habe den Interior darin selber gemappt.


    //edit: Und es funktioniert ja das erste Exit nicht, also das beim LSPD...

  • nicht am ende xD bevor du else if machst,hast du return 1 gemacht,mach das weg,da du ja else if schreibst ^^.



    if(IsPlayerInRangeOfPoint(playerid, 2.0, 1555.3000488281, -1675.6999511719, 15.800000762939)) //LSPD Enter {
    SetPlayerPos(playerid,246.80000305176, 62.900001525879,1002.515625);
    SetPlayerInterior(playerid,6);
    return 1; // das wegmachen }

  • Als ich nur einen Eingang & Ausgang hatte ging alles noch. Nachdem ich jetzt die zweiten reingeschrieben habe, funktioniert alles bis auf den 1. Ausgang, also den beim LSPD. (Es kommt auch nicht keine Fehlermeldung, als wenn der Server den Command nicht kennt, sondern einfach garnichts und es passiert auch nichts.)
    Der Rest geht.



    blind ? er hat sein Problem geschildert und den Code hinzugefügt............



    BTT:

    if(IsPlayerInRangeOfPoint(playerid, 2.0, 1555.3000488281, -1675.6999511719, 15.800000762939)) //LSPD Enter
    {
    SetPlayerPos(playerid,246.80000305176, 62.900001525879,1002.515625);
    SetPlayerInterior(playerid,6);
    return 1; <---- dieses return brauchst du nicht. lösche es mal raus und probiere es nochmal
    }


    Mfg


    PullDown

  • Sinnlose Reaktionen auf andere Beiträge
    blind ....? Wurde schon gesagt das er das Return nicht braucht
    Der Text wurde rein editiert oder ich hab es echt nicht gesehen


    zur Lösung:
    Ersetz mal
    die Zeile
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 246.80000305176, 62.900001525879, 1001.515625)) //LSPD Exit


    mit
    if(IsPlayerInRangeOfPoint(playerid, 2.0, 246.80000305176, 62.900001525879,1002.515625)) //LSPD Exit

    ik bin der vito c:

  • Also erstmal hat Pulldown schon Recht von meiner Seite aus. Ich habe mein Problem geschildert, genau beschrieben und einen Code eingefügt vom betreffenden Bereich.


    Nun trotzdem auch danke dir für die Antwort.


    Allen anderen auch ein Danke! Werde das von [DT]Done mal machen.


    Mfg, und nochmals danke,
    Maik

  • So,falls es noch immer nicht geht,bei mir waren die Koordinaten falsch von dir ?!
    Außerdem musst du unter OnGameModeInit auch DisableInteriorEnterExits(); -> machen.


    Hier nochmal mein ganzer OnPlayerCommandText ,falls es noch immer nicht geht ^^ ...


    pwn Code buggt gerade rum,daher hier als Pastebin ; http://pastebin.com/qpC3Q2cd ;musste nur noch ggf.einrücken ...


    - Lg

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Oh man, ich glaubs nicht!
    Hab echt gedacht dass es daran gelegen hat... Hab getan was du gesagt hast, es geht aber immer noch nicht! ;(


    //edit: Könnte ein Moderator diesen Thread vielleicht nochmal als "nicht erledigt" einstellen? Bitte.


    //edit2: Danke :)


    //edit3(20:56 Uhr): HAT SICH ERLEDIGT!!! --> Ersten Exit Befehl, also den vom LSPD neu geschrieben. Ging auf einmal... naja egal hauptsache es funktioniert jetzt :D Danke nochmal!

    Einmal editiert, zuletzt von Bosei ()