Szerző Téma: Random változó  (Megtekintve 1123 alkalommal)

Nem elérhető maark

  • 565
    • Profil megtekintése
Random változó
« Dátum: 2012. Március 05. - 19:24:45 »
0 Show voters
Sziasztok, próbálkoztam, nem sikerült. Nem tudom megcsinálni azt hogy a felsorolt változók közül kiválasszon véletlenszerûen egyet. Próbáltam mátrixxal, de úgy sem sikerült. Ötletek?
pl.: new valtozo[3];
new Randoms[][] =
{
    {valtozo[0]},
    {valtozo[1]},
    {valtozo[2]}
};
és akkor valahogy így gondoltam, de nem jó.

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Random változó
« Válasz #1 Dátum: 2012. Március 05. - 19:30:35 »
0 Show voters
Egy próbát megér. Ilyet nem nagyon szoktam csinálni, szóval meg lehet, hogy értelmetlen dolgot írtam le.
 
new Randoms[][3] =
{
    {valtozo[0]},
    {valtozo[1]},
    {valtozo[2]}
};

Gang[St]e[R]

  • Vendég
Random változó
« Válasz #2 Dátum: 2012. Március 05. - 19:35:07 »
0 Show voters
Megcsinálod számmal.
[pawn]new 1, 2, 3, 4, 5;[/pawn] // ezeket majd az objectel egyenlõvé teszed ahogy gondoltad privátba..
Beágyazás:
[pawn]SetObjectPos(rand(5), x, y, z);[/pawn]

Dupla hozzászólás automatikusan összefûzve. ( 2012. Március 05. - 19:38:46 )

Mivel a számok a változók amit az objectel egyenlõvé teszed, ez olyan mintha new object és azzal tennéd egyenlõvé, csak ez egy szám, ne tévezd össze egy object id-vel. Azért rand(5) ,mert a példában csak 5 db változót hoztam létre ami szám, és ebböl sorsol ki 5-öt.
« Utoljára szerkesztve: 2012. Március 05. - 19:38:46 írta GangSteR] »

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Random változó
« Válasz #3 Dátum: 2012. Március 05. - 19:46:05 »
0 Show voters
Egy másik megoldás.
 

new valami = random(3);
switch(valami)
{
        case 1:
        {
        // Függvény
        }
        case 2:
        {
        // Függvény
        }
        case 3:
        {
        // Függvény
        }
}
« Utoljára szerkesztve: 2012. Március 05. - 20:05:53 írta Cannonn »

Gang[St]e[R]

  • Vendég
Random változó
« Válasz #4 Dátum: 2012. Március 05. - 19:48:09 »
0 Show voters
Idézetet írta: Cannonn date=1330973165\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18051\" data-ipsquote-contentclass=\"forums_Topic
Egy másik megoldás.
 

new valami = random(3);
if(valami == 0)
{
// Függvény.
}
if(valami == 1)
{
// Függvény.
}
if(valami == 2)
{
// Függvény.
}

 

Ha már így csinálod legalább switch-el, hogy csak 1 lekérdezéssel terheljük a procit, ne többel.

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Random változó
« Válasz #5 Dátum: 2012. Március 05. - 19:48:28 »
0 Show voters

new const
g_iWheels[17] =
{
1025, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1096,
1097, 1098
};
// Aztán valahova..
AddVehicleComponent(vehicleid, g_iWheels[random(sizeof(g_iWheels))]); // Csak példa
printf(\"Random Wheel: %d\", g_iWheels[random(sizeof(g_iWheels))]);

Gang[St]e[R]

  • Vendég
Random változó
« Válasz #6 Dátum: 2012. Március 05. - 20:01:25 »
0 Show voters
Idézetet írta: kurta999 date=1330973308\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18051\" data-ipsquote-contentclass=\"forums_Topic


new const
g_iWheels[17] =
{
1025, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1096,
1097, 1098
};
// Aztán valahova..
AddVehicleComponent(vehicleid, g_iWheels[random(sizeof(g_iWheels))]); // Csak példa
printf(\"Random Wheel: %d\", g_iWheels[random(sizeof(g_iWheels))]);

 

Szintén rossz. Már megoldottam neki privátba, csak teszteli.

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Random változó
« Válasz #7 Dátum: 2012. Március 05. - 20:04:07 »
0 Show voters
Ha már így csinálod legalább switch-el, hogy csak 1 lekérdezéssel terheljük a procit, ne többel.[/quote]
Milyen igazad van, kösz, hogy szóltál, ha nem gond, javítom.

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Random változó
« Válasz #8 Dátum: 2012. Március 05. - 20:05:48 »
0 Show voters
\" post=\"234943\" timestamp=\"1330974085\"]

 

new const
g_iWheels[17] =
{
1025, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1096,
1097, 1098
};
// Aztán valahova..
AddVehicleComponent(vehicleid, g_iWheels[random(sizeof(g_iWheels))]); // Csak példa
printf(\"Random Wheel: %d\", g_iWheels[random(sizeof(g_iWheels))]);

 

[/quote]
Szintén rossz. Már megoldottam neki privátba, csak teszteli.
 
[/quote]
Miért lenne rossz?
Így használom, használtam mindig is és nekem megy.

Nem elérhető maark

  • 565
    • Profil megtekintése
Random változó
« Válasz #9 Dátum: 2012. Március 05. - 20:08:01 »
0 Show voters
pontosítok.
new halal[3];
halal[0] = CreateObject(....
halal[1] = CreateObject(....
halal[2] = CreateObject(....
és random egy eljárásnál kiválasszon a halal közül egyet. Az objectetet eltolja aztán 5 mp múlva vissza tegye a helyére. :S

dexi

  • Vendég
Random változó
« Válasz #10 Dátum: 2012. Március 05. - 21:17:43 »
0 Show voters
esetleg:
 
new rand = random(3);
MoveObject(halal[rand]....);
SetTimerEx(\"ObjectVisszaTolas\", 5000, false, \"i\", halal[rand]);
forward ObjectVisszaTolas(objid);
public ObjectVisszaTolas(objid)
{
//MoveObject... stb
}

 
Lehet hogy hülyeséget írtam...

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal