DM-Teleport [HELP]

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
  • Hey, wie mache ich einen Teleport, dass die Person dann in der DM-Map ist und Waffen bekommt, wenn man Tod ist wieder in der Map an dem Teleport Punkt spawnt, und es mit /exitdm verlassen kann?

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!


  • new isdm[MAX_PLAYERS];


    if(strcmp(cmdtext,"/dm",true))
    {
    if(isdm[playerid] == 0)
    {
    SetPlayerPos(playerid,x,y,z);
    GivePlayerWeapon(playerid,weapon,ammo);
    isdm[playerid] = 1;
    }
    else
    {
    isdm[playerid] = 0;
    SpawnPlayer(playerid);
    }
    }


    OnPlayerSpawn
    {
    if(isdm[playerid] == 1)
    {
    SetPlayerPos(playerid,x,y,z);
    GivePlayerWeapon(playerid,weapon,ammo);
    }
    }


    Erklärung:


    Man gibt /dm ein, wenn die cariable auf 0 ist, wird sie auf 1 gesetzt, man wird teleportiert und bekommt waffen.
    Bei erneutem dm wwird die variable auf 0 gesetzt, sprich man kommt nicht in die dm arena.


    Wenn man spawnt wird abgefragt ob die variable 1 ist; sollte dies der Fall sein wird man mit Waffen teleportiert

  • uff, so kompliziert xD


    //Edit: Ich bräuchte noch einen /exitdm befehl

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!


    Einmal editiert, zuletzt von Hijashy ()

  • du kannst /dm zweimal benutzen.


    Er sieht ja anhand der variable ob man dri ist oder nicht.


    Wenn du das von Dominik verwendest, musst du meins auch ändern:


    new isdm[MAX_PLAYERS];


    if(strcmp(cmdtext,"/dm",true))
    {
    if(isdm[playerid] == 0)
    {
    SetPlayerPos(playerid,x,y,z);
    GivePlayerWeapon(playerid,weapon,ammo);
    isdm[playerid] = 1;
    }
    }


    OnPlayerSpawn
    {
    if(isdm[playerid] == 1)
    {
    SetPlayerPos(playerid,x,y,z);
    GivePlayerWeapon(playerid,weapon,ammo);
    }
    }

  • Das NEW auch einfach bei public OnPlayerCommandText rein?

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!


  • Edit: noch 2 Errors


    C:\Dokumente und Einstellungen\Junior\Desktop\LV DM [Scrip-Testing]\pawno\new.pwn(117 -- 118) : error 028: invalid subscript (not an array or too many subscripts): "OnPlayerSpawn"
    C:\Dokumente und Einstellungen\Junior\Desktop\LV DM [Scrip-Testing]\pawno\new.pwn(117 -- 119) : error 001: expected token: "}", but found "if"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!