Problem mit Pickup

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
  • Guten Tag liebe Community,


    Ich möchte gerne einen Unsichtbaren Pickup scripten bei dem wenn man durch fährt/läuft ein GameText kommt und man in ein Interior geportet wird.
    Ich habe das nun so gemacht aber es funktioniert nicht!
    Weiß Jemand warum bzw. was ich falsch gemacht habe?


    Hier mein Code:


    Das habe ich bei "new":

    new bsnenter;


    Dann habe ich den Pickup in "public OnGameModeInit()" erstellt:

    bsnenter = CreateDynamicPickup(1239, 1, -792.9693,500.5572,1367.3672, 2);//ist irgend eine Coordinate.


    Bei "public OnPlayerPickUpPickup(playerid, pickupid)" habe ich folgendes eingefügt:

    if(pickupid == bsnenter)
    {
    SetPlayerPos(playerid,255.0301,82.9531,1002.4453);//ist irgend eine Coordinate.
    SetPlayerInterior(playerid, 6);//ist irgend eine Interior ID.
    GameTextForPlayer(playerid, "~g~Willkommen im~r~BSN", 4000, 1);
    }


    Ich bekomme kein Errors oder Warnings aber es funktioniert trotzdem nicht :(
    Weiß Jemand warum?
    Mein Script ist ein GF Edit.


    MFG


    Shark

  • Versuch mal ob es geht wenn du nur CreatePickup(bla,bla,bla,bla); machst.
    Oder schau erstmal ob es mit dem Pickup überhaupt funktioner!
    Mach einfach bei OnPlayerPickupPickup(bla)
    if(pickupid == bsnenter)
    {
    SendClientMessage(playerid,COLOR_RED,"Dein Text");
    }
    Und wenn es dann geht,weiste schonmal das es net am Pickup liegt xD.
    Naja versuchs einfach mal nur mit CreatePickup weil ich glaube nicht das du so viele Pickups hast,das du einen Streamer benötigst!

  • stock SetPlayerInInt(playerid,Float:X,Float:Y,Float:Z,IntId)//by Pixel
    {
    SetPlayerPos(playerid,X,Y,Z);
    return SetPlayerInterior(playerid,IntId);
    }

    Das würde ich oben ins Script machen damit wird es übersichtlich
    dann hast du SetPlayerinterior und SetPlayerPos in einem
    Verwendung:SetPlayerInInt(playerid,5/*Float X*/,3/*Float Y*/,7/*Float Z*/,6/*InteriorID*/);
    Pixel