Szerző Téma: Class selection parancsra  (Megtekintve 1415 alkalommal)

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Dátum: 2010. június 24. - 19:22:51 »
0 Show voters
Hi.
Azt hogy oldom meg, hogy ugye van az onplayerrquestclass függvény. oda kell h ha skintvált akkor hol van stb...
Nos én azt szeretném, hog mikor belép a játékra lerakja mintha mi sem történt volna, nem rakja skinváltoba mint ahogy az szokott lenni szerverekre csatlakozáskor, hanem ha beir egy parancsot akkor rakja skinváltoba.
ez egyszerü csak nemjövök rá h kellene.
mer ha a requestclasst kitöltöm h hova rakja stb akk meg már connectnél odarakja :S
pls help :D

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Válasz #1 Dátum: 2010. június 24. - 19:46:22 »
0 Show voters
1. ne duplapostolj :D
2. Akkor mitrakok oda?

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Class selection parancsra
« Válasz #2 Dátum: 2010. június 24. - 20:38:41 »
0 Show voters
Túlbonyolítjátok....
Tessék:
 

public OnPlayerRequestClass ( playerid, classid ) return SpawnPlayer ( playerid );

 


if ( strcmp(\"/pweps\", cmdtext, true ) == 0 )
{
    ForceClassSelection ( playerid );
    SetPlayerHealth ( playerid,0.0 );
    return 1;
}

 
Használd egészséggel.  ;)
« Utoljára szerkesztve: 2010. június 24. - 20:43:01 írta Csabesz »

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Válasz #3 Dátum: 2010. június 24. - 22:15:26 »
0 Show voters
hát csabesz, nem jutok szóhoz, te mennyit segitesz nekem :D
Már elég rég ota, kb fél éve programozok pawnoval, elég jol tudok dolgokat már, de tudod vannak ilyen csöppségek amin elakad az ember :d
és ezt nagyon köszi, h segited ;)
mindjárt megnézem jó-e :P :D:D
szerk: egy baja van, az onplayerrquestclasshoz ezt irtam illetve az egy sor:
public OnPlayerRequestClass(playerid, classid) return SpawnPlayer(playerid);
ez jó. oké az a gond h beirom a parancsot, de berak skinváltóba, csak mikor a nyillal mennék jobbra balra akkor lespawnol.
ok? :O
« Utoljára szerkesztve: 2010. június 24. - 22:25:29 írta Zsoma »

Nem elérhető Depi

  • 2259
  • Még mindig TrYp. :)
    • Profil megtekintése
Class selection parancsra
« Válasz #4 Dátum: 2010. június 24. - 22:44:16 »
0 Show voters
Mivel a Spawn Player nem kell oda,teljesen felesleges.

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Válasz #5 Dátum: 2010. június 24. - 22:52:53 »
0 Show voters
mi a megoldás akkor?
a JÓ megoldás?

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Class selection parancsra
« Válasz #6 Dátum: 2010. június 24. - 22:54:29 »
0 Show voters
Idézetet írta: Draven date=1277412256\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"2157\" data-ipsquote-contentclass=\"forums_Topic
Mivel a Spawn Player nem kell oda,teljesen felesleges.
 
Hát nem éppen, mielott szólsz olvasd el a kérést...
 

Hi.
Azt hogy oldom meg, hogy ugye van az onplayerrquestclass függvény. oda kell h ha skintvált akkor hol van stb...
Nos én azt szeretném, hog mikor belép a játékra lerakja mintha mi sem történt volna, nem rakja skinváltoba mint ahogy az szokott lenni szerverekre csatlakozáskor, hanem ha beir egy parancsot akkor rakja skinváltoba.
ez egyszerü csak nemjövök rá h kellene.
mer ha a requestclasst kitöltöm h hova rakja stb akk meg már connectnél odarakja :S
pls help :D
 
[/quote]
A 2. problémádnál már neked is variálnod kell, hogy muködjön. Azzal lesz a gond, hogy a OnPlayerRequestClass függvény tartalma nem tud nefutni mert visszatértünk a SpawnPlayer függvénnyel.
Ezért a következo megoldást javaslom.:
 

public OnPlayerRequestClass ( playerid, classid )
{
   SpawnPlayer ( playerid );
   //ide a függvény többi tartalmát
   return 1;
}
« Utoljára szerkesztve: 2010. június 24. - 22:57:47 írta Csabesz »

Nem elérhető Depi

  • 2259
  • Még mindig TrYp. :)
    • Profil megtekintése
Class selection parancsra
« Válasz #7 Dátum: 2010. június 24. - 23:50:07 »
0 Show voters
Idézetet írta: Csabesz date=1277412869\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"2157\" data-ipsquote-contentclass=\"forums_Topic


Mivel a Spawn Player nem kell oda,teljesen felesleges.
 
Hát nem éppen, mielott szólsz olvasd el a kérést...
 

Hi.
Azt hogy oldom meg, hogy ugye van az onplayerrquestclass függvény. oda kell h ha skintvált akkor hol van stb...
Nos én azt szeretném, hog mikor belép a játékra lerakja mintha mi sem történt volna, nem rakja skinváltoba mint ahogy az szokott lenni szerverekre csatlakozáskor, hanem ha beir egy parancsot akkor rakja skinváltoba.
ez egyszerü csak nemjövök rá h kellene.
mer ha a requestclasst kitöltöm h hova rakja stb akk meg már connectnél odarakja :S
pls help :D
 
[/quote]
A 2. problémádnál már neked is variálnod kell, hogy muködjön. Azzal lesz a gond, hogy a OnPlayerRequestClass függvény tartalma nem tud nefutni mert visszatértünk a SpawnPlayer függvénnyel.
Ezért a következo megoldást javaslom.:
 

public OnPlayerRequestClass ( playerid, classid )
{
    SpawnPlayer ( playerid );
    //ide a függvény többi tartalmát
    return 1;
}

 

[/quote]
Bocs nem figyeltem.

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Válasz #8 Dátum: 2010. június 25. - 15:08:12 »
0 Show voters
most akkor az onplayerrquestclasshoz irjam h hova rakja interiorba stb meg oda együtt a spawnplayert is?
és megcsinjak egy parancsot h skinváltoba rakja?  :-X :D
szerk: nem, tévedtem.
Vki egybe letudja már irni? XD bocs de most rohadtul elvesztettem a fonalat S:S:
« Utoljára szerkesztve: 2010. június 25. - 15:15:22 írta Zsoma »

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Class selection parancsra
« Válasz #9 Dátum: 2010. június 25. - 15:48:56 »
0 Show voters
Változóval jobban néz ki.:
 

new bool:Spawned [ MAX_PLAYERS ];
public OnPlayerConnect ( playerid )
{
    Spawned [ playerid ] = false;
    return 1;
}
public OnPlayerRequestClass ( playerid, classid )
{
   if ( Spawned [ playerid ] == false ) return SpawnPlayer ( playerid );
   // Ide jöhet a többi cucc; kamera stb..
   return 1;
}
public OnPlayerSpawn ( playerid )
{
   Spawned [ playerid ] = true;
   return 1;
}

 


if ( strcmp(\"/pweps\", cmdtext, true ) == 0 )
{
   ForceClassSelection ( playerid );
   SetPlayerHealth ( playerid,0.0 );
   return 1;
}

 
Így jónak kell lennie. ;)  :D
Szerk.: Bocsi lemaradt egy kis rész...  :angel:
« Utoljára szerkesztve: 2010. június 25. - 20:44:52 írta Csabesz »

Nem elérhető Zsoma

  • 516
    • Profil megtekintése
Class selection parancsra
« Válasz #10 Dátum: 2010. június 25. - 15:56:12 »
0 Show voters
error 033: array must be indexed (variable \"Spawned\")
már megvan jelölve h false nem?
am még mindig nemjó :S
de mindegy, kitalálok más megoldást, azért köszi mindenkinek :D
szerk.: viszont ha tudnátok lécci linkeljetek már nekem egy értelmes npc létrehozo tutorialt :D
elöre is nagyon köszi :D
« Utoljára szerkesztve: 2010. június 25. - 16:39:07 írta Zsoma »

Nem elérhető krisk

  • 2380
    • Profil megtekintése
Class selection parancsra
« Válasz #11 Dátum: 2010. június 25. - 20:41:14 »
0 Show voters
Csabesz járt a legközelebb, de az övé is rossz ( a boolean-nak elméletben alapból nem false az értéke ). Így a helyes:
 

// mód elejére
new bool:spawned[MAX_PLAYERS];
public OnPlayerConnect(playerid) {
spawned[playerid] = false;
return 1;
}
public OnPlayerSpawn(playerid) {
spawned[playerid] = true;
return 1;
}
public OnPlayerRequestClass( playerid, classid ) {
if(spawned[playerid] = false) return SpawnPlayer(playerid);
return 1;
}

 
;)
« Utoljára szerkesztve: 2010. június 25. - 20:44:47 írta krisk »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal