Interior-System tut vorgegebenes nicht

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
  • Ich sitze an einem Interior-System und bin auf ein Problem gestoßen. Ich habe keine Errors, aber das System
    will einfach nichts ausführen. Die Pickups mit den 3DTextLabel's werden in OnGameModeInit alle durch eine
    Schleife erstellt, aber will ich in per /enter in ein Interior rein, dann passiert einfach -> NICHTS<-. Es wird
    nicht mal eine SendClientMessage abgesendet.


    Code ist, wie man merkt, recht groß. Das ist aber nur wegen dem Array. Das sind 45 Interiors.


    Hier der Enum und Array, OnGameModeInit-Zeug und der Befehl:



    enum pickInfo
    {
    enterpickupid,
    Float:pickX,
    Float:pickY,
    Float:pickZ,
    exitvworld,
    c3dtext[70],
    entervworld,
    pinteriorid,
    Float:esX,
    Float:esY,
    Float:esZ
    }


    //Eingang - pickenterexit
    new iPickupSys[][pickInfo] = {


    /*Enterpickupid, Float pickX,Y,Z vWelt,wenn verlässt, c3dtext entervworld + pinteriorid Float esX,Y,Z */
    {1252,2158.4805,943.2201,10.8203, 0,"Ammunation\nLas Venturas, The Strip", 1,1, 286.5717,-39.4741,1001.5156}, // ammunationlvtankeeinfahrt
    {1252,2557.0579,2064.3557,11.0995, 0,"Ammunation\nLas Venturas, Linden Side", 2,4, 285.5918,-84.9341,1001.5156}, // ammunationlvlindenside
    {1252,-1509.0281,2609.6567,55.8359, 0,"Ammunation\nTierra Robada, El Quebrados", 3,6, 296.7941,-111.1403,1001.5156}, // elquebradoslittleammunation
    {1252,-2626.6738,209.4705,4.5955, 0,"Ammunation\nSan Fierro, Queens", 4,7, 315.6330,-142.3304,999.6016}, // ammunationrgnsamenpunkt
    {1252,-2092.9502,-2464.1506,30.6250, 0,"Ammunation\nWhetstone, Angelpine", 5,4, 285.5918,-84.9341,1001.5156}, // ammunationanglepine
    {1252,1367.7456,-1279.7279,13.5469, 0,"Ammunation\nLos Santos, Market", 6,6, 296.7941,-111.1403,1001.5156}, // hauptammu
    {1252,2400.6392,-1981.2506,13.5469, 0,"Ammunation\nLos Santos, Willowfield", 7,1, 286.5717,-39.4741,1001.5156}, // ammunationatzenammu
    {1252,512.8488,-1511.1582,14.5678, 0,"Ammunation\nLos Santos, Rodeo", 8,4, 285.5918,-84.9341,1001.5156}, // ammunationnähetresor
    {1252,241.8159,-178.4459,1.5781, 0,"Ammunation\nRed County, Blueberry", 9,7, 315.6330,-142.3304,999.6016}, // blueberryammunation
    {1240,1199.3728,-919.6257,43.1112, 0,"Burger Shot Nord\nLos Santos, Mullholland", 10,10, 363.7376,-74.4491,1001.5078}, // bsnlossantos
    //----------------------------------------------------------------------------------------------------------------------------------------->
    {1240,1038.0056,-1339.4806,13.7266, 0,"Donut-Shop\nLos Santos, Market", 11,17, 376.6510,-191.5083,1000.6328}, // donutladenrgn
    {1240,927.6630,-1352.7496,13.3438, 0,"Cluck In Bell\nLos Santos, Market - Station", 12,9, 364.9821,-10.2745,1001.8516 }, // cluckinbellls
    {1240,2104.8667,-1806.4883,13.5547, 0,"The Well Stacked Pizza\nLos Santos, Idlewood", 13,5, 372.4175,-132.1847,1001.4922}, // thewellstackedpizzaidlewoodls
    {1240,-2154.7324,-2460.4585,30.8516, 0,"Cluck In Bell\nAngelpine", 14,9, 364.9821,-10.2745,1001.8516}, // anglepinecluckinbell
    {1240,-1911.8153,828.4231,35.1748, 0,"Burger Shot Nord\nSan Fierro, Financial", 15,10, 363.7376,-74.4491,1001.5078}, // burgershotfinancialsf
    //----------------------------------------------------------------------------------------------------------------------------------------->
    {1240,-2356.4839,1008.1956,50.8984, 0,"Burger Shot Nord\nSan Fierro, Juniper Hollow", 16,10, 363.7376,-74.4491,1001.5078}, // burgershotsfjuniperhollow
    {1240,-2767.2810,788.8793,52.7813, 0,"Donut-Shop\nSan Fierro, Palisades", 17,17, 376.6510,-191.5083,1000.6328}, // donutladensfpalisades
    {1240,-2672.1760,259.4420,4.6328, 0,"Cluck In Bell\nSan Fierro, City Hall", 18,9, 364.9821,-10.2745,1001.8516}, // cluckinbellcityhall
    {1240,-2335.1638,-167.5720,35.5547, 0,"Burger Shot South\nSan Fierro, Garcia", 19,10, 363.7376,-74.4491,1001.5078}, // bssgarciasf
    {1240,172.6064,1176.4257,14.7645, 0,"Cluck In Bell\nTierra Robada, Fort Carson", 20,9, 364.9821,-10.2745,1001.8516}, // fortcarsoncluckinbell
    {1240,-144.0259,1223.4386,19.8992, 0,"Donut-Shop\nTierra Robada, Fort Carson", 21,17, 376.6510,-191.5083,1000.6328}, // donutladenfortcarson
    {1240,-1213.2289,1830.8306,41.9297, 0,"Cluck In Bell\nTierra Robada, Las Barrancas", 22,9, 364.9821,-10.2745,1001.8516}, // cluckinbellnachlasbarrancas
    //----------------------------------------------------------------------------------------------------------------------------------------->
    {1240,1158.7992,2072.2183,11.0625, 0,"Burger Shot Nord\nLas Venturas, West-Side", 23,10, 363.7376,-74.4491,1001.5078}, // bsnlvwest
    {1240,1873.6160,2071.4924,11.0625, 0,"Burger Shot\nLas Venturas, Middle", 24,10, 363.7376,-74.4491,1001.5078}, // burgershotmittelv
    {1240,2392.3687,2042.7657,10.8203, 0,"Cluck In Bell\nLas Venturas, East-Side", 25,9, 364.9821,-10.2745,1001.8516}, // cluckinbellostenlv
    {1240,2472.0437,2034.3879,11.0625, 0,"Burger Shot\nLas Venturas, East-Side", 26,10, 363.7376,-74.4491,1001.5078}, // burgershotnebencluckinbelllvost
    {1240,1367.0405,248.5923,19.5669, 0,"Cluck In Bell\nRed County, Montgomery", 27,9, 364.9821,-10.2745,1001.8516}, // cluckinbellmontgomery
    {1240,203.2651,-202.9149,1.5781, 0,"The Well Stacked Pizza\nRed County, Blueberry", 28,5, 372.4175,-132.1847,1001.4922}, // pizzablueberry
    {1247,627.7783,-571.8004,17.5446, 0,"Police Department\nLos Santos, Dillimore", 29,5, 372.4175,-132.1847,1001.4922}, // dillimorepd - Interior Name: Barbara Room
    //----------------------------------------------------------------------------------------------------------------------------------------->
    {1314,1939.2828,-1115.5748,27.4523, 0,"Rolling Heigh Ballas\nLos Santos, Glenpark", 30,3, 267.7933,304.7636,999.1484}, // ballasspawnglenpark,Katie ROOM
    {1314,2495.4912,-1690.4358,14.7656, 0,"Grove Street Family\nLos Santos, Ganton", 31,2, 244.9058,304.9786,999.1484}, // grovespawn, Denise Room
    {1247,1553.9319,-1675.6193,16.1953, 0,"SAPD\nLos Santos, Commerce/Pershing Square", 32,6, 246.8454,64.1391,1003.6406}, // lspdspawn
    {1314,-525.2632,-505.6433,25.5234, 0,"Wheelman\nFlint County, Fallen Tree", 33,1, -794.9061,491.4602,1376.1953}, // wheelmanspawn - Liberty City inside
    {1314,-2721.0037,-317.4959,7.8438, 0,"Triaden Family\nSan Fierro, Avispa Country Club", 34,12, 2324.4404,-1147.3237,1050.7101}, // triadenspawnavispacountryclub - unused safe house
    {1314,-1551.5620,1168.5499,7.1875, 0,"Yakuza Family\nSan Fierro, Esplanade North", 35,3, 966.2407,-53.2023,1001.1246}, // yakuzaottosahrgnspawn - Tiger skin brothel
    {1314,1066.0397,1002.4430,11.0000, 0,"Irish Crime Family\nLas Ven., Greenglass College", 36,3, 2496.3862,-1693.9739,1014.7422}, // icfspawngreenglasscollege - Cj's house
    {1314,2169.7288,1679.4567,10.8203, 0,"Las Venturas Vagos\nLas Venturas, The Strip", 37,5, 372.4175,-132.1847,1001.4922}, // vagosspawn - crack den
    {1313,2814.6797,972.0084,10.7500, 0,"Hitman\nLas Venturas, Linden Side", 38,8, 2807.6650,-1172.7579,1025.5703}, // hitmanspawnlindenside - Colonel Furhberger's
    //----------------------------------------------------------------------------------------------------------------------------------------->
    {1240,2398.6311,-1897.8851,13.5469, 0,"CluckInBell\nLos Santos, Willowfield", 39,9, 364.9821,-10.2745,1001.8516},
    {1275,2244.4819,-1664.0601,15.4766, 0,"Binco\nLos Santos, Grove Street", 40,15, 207.6358,-109.4817,1005.1328},
    {1275,1457.3730,-1138.0272,23.9905, 0,"Suburban\nLos Santos, Downtown", 41,1, 203.8289,-48.3100,1001.8047},
    {1275,-1883.6761,865.0218,35.1719, 0,"ZIP\nSan Fierro, Financial", 42,18, 161.4350,-95.0657,1001.8047},
    {1240,-1722.5310,1359.5790,7.1875, 0,"Pizza\nSan Fierro, Esplanade North/East", 43,5, 372.4175,-132.1847,1001.4922},
    {1240,2102.9631,2228.7300,11.0234, 0,"CluckInBell\nLas Venturas, Nahe LVPD", 44,9, 364.9821,-10.2745,1001.8516},
    {1275,2102.6655,2257.7490,11.0234, 0,"Binco\nLas Venturas, Nahe LVPD", 45,15, 207.6358,-109.4817,1005.1328}
    };


    new Float:enterDistanz = 3.0, Float:showDistanz = 10.0;


    public OnGameModeInit
    {
    for(new i=0; i < sizeof(iPickupSys); i++)
    {
    CreatePickup(iPickupSys[i][enterpickupid], 1, iPickupSys[i][pickX], iPickupSys[i][pickY], iPickupSys[i][pickZ], iPickupSys[i][exitvworld]);
    Create3DTextLabel(iPickupSys[i][c3dtext], LABEL_COLOR, iPickupSys[i][pickX], iPickupSys[i][pickY], iPickupSys[i][pickZ], showDistanz, 0);
    }
    return 1;
    }


    ocmd:enter(playerid, params[])
    {
    if(IsPlayerInRangeOfPoint(playerid, enterDistanz, iPickupSys[playerid][pickX], iPickupSys[playerid][pickY], iPickupSys[playerid][pickZ]))
    {
    SendClientMessage(playerid, -1, "Interior betreten.");
    SetPlayerPos(playerid, iPickupSys[playerid][esX], iPickupSys[playerid][esY], iPickupSys[playerid][esZ]);
    SetPlayerInterior(playerid, iPickupSys[playerid][pinteriorid]);
    SetPlayerVirtualWorld(playerid, iPickupSys[playerid][entervworld]);
    }
    return 1;
    }


    Ich hoffe, dass man mir helfen kann.
    Danke im Voraus.


    Mit freundlichen Grüßen


    Kristik47

  • Dir fehlt der Bezug zum aktuellen Interioreingang, der gerade am nähsten ist.
    if(IsPlayerInRangeOfPoint(playerid, enterDistanz, iPickupSys[playerid][pickX], iPickupSys[playerid][pickY], iPickupSys[playerid][pickZ]))
    Wenn deine playerid 0 ist, dann wird nur abgefragt:
    if(IsPlayerInRangeOfPoint(playerid, enterDistanz, iPickupSys[0][pickX], iPickupSys[0][pickY], iPickupSys[0][pickZ]))


    Hier ist ein Beispiel dafür, wie man das "nähste" Fahrzeug findet.

    Berlin - Tel Aviv - Moskau

  • Habe ich gemacht, sieht jetzt so aus.



    ocmd:enter(playerid, params[])
    {
    for(new i = 0; i < sizeof(iPickupSys); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid, enterDistanz, iPickupSys[i][pickX], iPickupSys[i][pickY], iPickupSys[i][pickZ]))
    {
    SendClientMessage(i, -1, "Interior betreten.");
    SetPlayerPos(i, iPickupSys[i][esX], iPickupSys[i][esY], iPickupSys[i][esZ]);
    SetPlayerInterior(i, iPickupSys[i][pinteriorid]);
    SetPlayerVirtualWorld(i, iPickupSys[i][entervworld]);
    }
    }
    return 1;
    }


    Habe auch einen Test durchgeführt. Es geschieht immer noch nichts. Ich bleibe stehen, es verändert sich weder
    Interior-ID, Virtualworld, noch erhalte ich eine SendClientMessage oder meine Position wird zum angegeben
    Interior verschoben. Echt hilflos gerade...


    @Pinguin Dev.
    @NeRoTeX

  • ocmd:enter(playerid, params[])
    {
    for(new i = 0; i < sizeof(iPickupSys); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid, enterDistanz, iPickupSys[i][pickX], iPickupSys[i][pickY], iPickupSys[i][pickZ]))
    {
    SendClientMessage(playerid, -1, "Interior betreten.");
    SetPlayerPos(playerid, iPickupSys[i][esX], iPickupSys[i][esY], iPickupSys[i][esZ]);
    SetPlayerInterior(playerid, iPickupSys[i][pinteriorid]);
    SetPlayerVirtualWorld(playerid, iPickupSys[i][entervworld]);
    return 1;
    }
    }
    return 1;
    }