Szerző Téma: Random spawnolás DM-ben  (Megtekintve 1158 alkalommal)

Random spawnolás DM-ben
« Dátum: 2011. február 27. - 10:12:03 »
0 Show voters
Sziasztok, valaki tudna segíteni hogy hogy tudom megoldani a random spawnolást DM zónában?
Eddig eljutottam:
 
new rand = random(sizeof(gRandomPlayerSpawns));
SetPlayerPos(playerid, gRandomPlayerSpawns[rand][0], gRandomPlayerSpawns[rand][1],gRandomPlayerSpawns[rand][2]);

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Random spawnolás DM-ben
« Válasz #1 Dátum: 2011. február 27. - 10:23:40 »
0 Show voters
Mód elejére:
 
new const Float: DMSPawn [ ] [ 3 ] =
{
    { 122.1242, 1453.34, 23.42 }, // Koordináták X,Y,Z
    { 324.2342, 2355.22, 13.23 }, // Koordináták X,Y,Z
    { 243.4342, 2323.23, 52.34 }, // Koordináták X,Y,Z
    { 131.3232, 3215.33, 23.42 }  // Koordináták X,Y,Z
};

 
DM Parancshoz:
 

new rand = random ( sizeof ( DMSpawn ) );
SetPlayerPos ( playerid, DMSpawn [ rand ] [ 0 ], DMSpawn [ rand ] [ 1 ], DMSpawn [ rand ] [ 2 ]  );

 
Használd Epsilonét.  :D  :D
V
« Utoljára szerkesztve: 2011. február 27. - 10:30:56 írta IceMan™ »

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Random spawnolás DM-ben
« Válasz #2 Dátum: 2011. február 27. - 10:25:32 »
0 Show voters
Ez a teljes kód.
Feltételezem, még mindig az én leírásom alapján készíted a DM zónákat, annál pedig úgy kell eljárni hogy:
Minden DM zónának létrehozol külön egy tömböt (pl. RandomSpawns) és beleírod annak a DM zónának a kezdõ koordinátáit. Majd a leírás példájánál feltüntetett helyen (Feltüntetés(így találod meg): // Elhelyezés a dMben. Itt akár véletlenszerû spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)) használod az alsó kódot. (persze az alábbi példa OnPlayerSpawn része nem kell csak tartalma)
 
new const Float: RandomSpawns[] [ 4 ] = {
//  {  X ,  Y ,  Z ,  A },
   { 0.0, 1.1, 2.2, 3.3 },
   { 1.1, 2.2, 3.3, 4.4 },
   { 2.2, 3.3, 4.4, 5.5 }
}; // További sorok hozzáadhatóak, de figyelj hogy az utolsó után ne tegyél vesszot.
public OnPlayerSpawn( playerid )
{
   new const rand = random(sizeof(RandomSpawns));
   SetPlayerPos( playerid, RandomSpawns[ rand ] [ 0 ], RandomSpawns[ rand ] [ 1 ], RandomSpawns[ rand ] [ 2 ] );
   SetPlayerFacingAngle( playerid, RandomSpawns[ rand ] [ 3 ] );
   return 1;
}

 
E: Csabesz a tiéd hibás, próbáld meg átfordítani. (a tömb)
Kadaram, próbáld meg és jelezz vissza!

Random spawnolás DM-ben
« Válasz #3 Dátum: 2011. február 27. - 12:13:35 »
0 Show voters
Köszi de szerintem valamit rosszul csináltam
Gamemode elején:
 
new const Float: RandomSpawns[] [ 4 ] = {
     {2737.7871,-1760.2502,44.1498},
            { 2789.1135,-1744.3081,39.8986,117.7161 },
            { 2723.8813,-1703.3990,38.8141,78.0907 },
            { 2681.8699,-1746.8962,39.0449,258.5724 }
   }; // További sorok hozzáadhatóak, de figyelj hogy az utolsó után ne tegyél vesszot.

 
OnPlayerSpawn-nál:
 
case 3: // 2-es azonosítószámú dm zónához tartozó tevékenységek
       {
             new const rand = random(sizeof(RandomSpawns));
            SetPlayerPos( playerid, RandomSpawns[ rand ] [ 0 ], RandomSpawns[ rand ] [ 1 ], RandomSpawns[ rand ] [ 2 ] );
   SetPlayerFacingAngle( playerid, RandomSpawns[ rand ] [ 3 ] )
   SetPlayerPos(playerid,2737.7871,-1760.2502,44.1498); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)
              SetPlayerFacingAngle(playerid,110.0); // Játékos írányba állítása; elforgatás
            ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
            GivePlayerWeapon(playerid,38,1000);
            SetPlayerVirtualWorld(playerid, 2); // áthelyezés mási VW-be

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Random spawnolás DM-ben
« Válasz #4 Dátum: 2011. február 27. - 14:24:22 »
0 Show voters
Ha betetted a random spawnot töröld ki a már ott lévõ SetPlayerPos-t és SetPlayerFacingAngle-t (ami alapból ott volt)
Ezenkívül a koordinátákból mindenhol hiányzik az utolsó a FacingAngle (A).
Pótold ki!

Random spawnolás DM-ben
« Válasz #5 Dátum: 2011. február 27. - 14:33:26 »
0 Show voters
De akkor is hibát ír ki(
(640) : error 001: expected token: \";\", but found \"-identifier-\"

 
Szerintem mindent megcsináltam,amit mondtál:
 
new const Float: RandomSpawns[] [ 4 ] = {
   {2737.7871,-1760.2502,44.1498,110.0},
            { 2789.1135,-1744.3081,39.8986,110.0 },
            { 2723.8813,-1703.3990,38.8141,110.0 },
            { 2681.8699,-1746.8962,39.0449,110.0 }
   }; // További sorok hozzáadhatóak, de figyelj hogy az utolsó után ne tegyél vesszot.

 

case 3: // 3-as azonosítószámú dm zónához tartozó tevékenységek
       {
   new const rand = random(sizeof(RandomSpawns));
            SetPlayerPos( playerid, RandomSpawns[ rand ] [ 0 ], RandomSpawns[ rand ] [ 1 ], RandomSpawns[ rand ] [ 2 ] );
   SetPlayerFacingAngle( playerid, RandomSpawns[ rand ] [ 3 ] )
   //SetPlayerPos(playerid,2737.7871,-1760.2502,44.1498); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)
              //SetPlayerFacingAngle(playerid,110.0); // Játékos írányba állítása; elforgatás
            ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
            GivePlayerWeapon(playerid,38,1000);
            SetPlayerVirtualWorld(playerid, 2); // áthelyezés mási VW-be
      }

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Random spawnolás DM-ben
« Válasz #6 Dátum: 2011. február 27. - 14:44:31 »
0 Show voters
A berakott SetPlayerFacingAngle mögött lemaradt az ;  ;) :D

Random spawnolás DM-ben
« Válasz #7 Dátum: 2011. február 27. - 14:47:53 »
0 Show voters
Idézetet írta: Epsilon date=1298814271\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6458\" data-ipsquote-contentclass=\"forums_Topic
A berakott SetPlayerFacingAngle mögött lemaradt az ;  ;) :D
 
Hú basszús kösz,ezt hogy nézhettem el?GOndoltam hogy valami ilyesmi lesz,de nem találtam és így azt hittem más a hiba! :D
Még egyszer köszönöm,zárok!
« Utoljára szerkesztve: 2011. február 27. - 15:32:09 írta kadaradam »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal