teleportieren

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 alle miteinander
    kann mir jemand bei emeinem problem bitte helfen ,
    also ich möchte ein script erstellen bei dem man wenn man auf einen lichkegel geht , man zu einer bestimmten stelle gebeamt wird und wenn von dieser stelle wieder auf einen weiteren kegel tritt wieder zurück gebeamt wird .
    ist das ganze möglich ?
    -181.5448,1056.9391,19.7422,85.5350 punkt für kegel 1
    -66.5487,3798.1465,6.7437,325.1479 wenn man kegel 2 betritt soll man hier raus kommen
    -66.5487,3798.1465,6.7437,325.1479 kegel 2
    -60.1202,3831.4360,6.9958,330.3560 punkt an dem man raus kommen soll wenn man kegel 1 betritt
    wichtig die punkte sind keine interiors sondern frei auf der map
    danke im vorraus

  • ganz oben
    forward Tele();



    bei modeinit
    SetTimer("Tele",1000, 1);



    public Tele()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInRangeOfPoint(i,3.0,-181.5448,1056.9391,19.7422)) SetPlayerPos(i,-60.1202,3831.4360,6.9958);
    else if(IsPlayerInRangeOfPoint(i,3.0,-66.5487,3798.1465,6.7437)) SetPlayerPos(i,-66.5487,3798.1465,6.7437);
    }
    }
    return 1;
    }

  • EDIT :
    mein error ist nun weg war ein kleiner fehler ,
    jetzt muss ich noch einen pickup machen oder da im spiel keine reaktion zu sehn ist ,
    könnte man bei dem pickup machen dass ein text erschein wenn man teleportiert wird ?

    Einmal editiert, zuletzt von Ronny_Corleone ()

  • mcih würde nur interessieren waurm ich keinen error hab es aber trozdem nicht geht ?
    wenn ich mich auf den punkt stelle werde ich trozdem nicht teleportiert

  • hier steht der timer
    public OnGameModeInit()
    {
    //~~~~~~~~~~~~~~Map
    waffe1 = CreatePickup(334,23,218.6827,119.1074,1003.2188,-1);
    waffe = CreatePickup(349,23,218.6827,119.1074,1003.2188,-1);
    deagel = CreatePickup(348,24,-318.0920,1293.6486,53.6643,0 );
    molotov = CreatePickup(344,18,-321.5088,1293.0042,53.6643,0);
    baseball = CreatePickup(336,5,-319.9187,1293.7438,53.6643,0);
    deagel2 = CreatePickup(334,23,218.6827,119.1074,1003.2188,-1 );
    AK47 = CreatePickup(355,30,-325.7109,1293.1343,53.6643,0 );
    SetTimer("Tele",30, 0);
    Ziele 389
    forward rentfee();
    forward newcar();
    forward Tele();
    forward KillVehicle(carid);
    new VehStream[MAX_VEHICLES][MAX_PLAYERS];
    new Duty[MAX_PLAYERS];
    new Text:TEXT_CARLIST;
    new Text:TEXT_ANIM;


    ganz untern vom script
    public Tele()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInRangeOfPoint(i,3.0,-181.5448,1056.9391,19.7422)) SetPlayerPos(i,-60.1202,3831.4360,6.9958);
    else if(IsPlayerInRangeOfPoint(i,3.0,-66.5487,3798.1465,6.7437)) SetPlayerPos(i,-66.5487,3798.1465,6.7437);
    }
    }
    return 1;
    }


    edit: das porten in eine richtung geh jetzt nur wenn ich an punkt 2 stehe komme ich nicht mehr zuück werde nur kurz ein die selbe stelle resettet
    edit: geht nun auch muss nurnoch pickups machen danke für die hilfe
    und ich wünsch euch nen schönen abend

    2 Mal editiert, zuletzt von Ronny_Corleone ()

  • Warum machst du das mit einem Timer wenn du pickups machst ? Das ist total sinnlos , die Art von Halo .....


    schau



    new teleport; // das kommt oben hin


    teleport=CreatePickUp(....); // Unter OnGameModInit


    if(pickupid==teleport// Das Kommt unter OnPlayerPickUp hin
    {
    SetPlayerPos(...);
    }


    Die Methode ist Schwachsinn wenn du es ohne Timer ganz einfach machen kannst.