Szerző Téma: MI a gond ezzel a két parancsal?  (Megtekintve 1192 alkalommal)

dexi

  • Vendég
MI a gond ezzel a két parancsal?
« Dátum: 2011. november 22. - 17:38:48 »
0 Show voters
Pórbálgattam egy szerelõ hívó és elfogadó parancsot... én is tudom hogy rossz lett mivel:
-Nem azt csinálja amit terveztem:D
Ha megkérhetlek titeket légyszives csináljátok meg. Gondolkoztam hogy lehetne megoldani az ÉN tudásommal... de hát nem sikerült=(...
Szerelõ hívás:
[pawn]///////////////////--SZERELÕ HÍVÁS////
      if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
   GetPlayerName(playerid, hivonev, sizeof(hivonev));
 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)
 {
   SendClientMessage(playerid,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");
   format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);
   SendClientMessage(playerid, -1, string);
   return 1;
      }
      else SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");
      return 1;
      }[/pawn]
Szerelõ elfogadás:
[pawn]if(strcmp(cmd, \"/elfogadsz\",true)== 0)
{
 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)
 {
    GetPlayerPos(playerid, X1,Y1,Z1);
    SetPlayerCheckpoint(playerid, X1,Y1,Z1,2);
   SendClientMessage(playerid,0x00ff22AA, \"Elfogadtad a hívást.\");
   return 1;
      }
      else SendClientMessage(playerid, 0xff0000AA, \"Nem vagy szerelõ.\");
      return 1;
      }[/pawn]
« Utoljára szerkesztve: 2011. november 22. - 17:47:52 írta dexi »

MI a gond ezzel a két parancsal?
« Válasz #1 Dátum: 2011. november 22. - 17:48:28 »
0 Show voters
és mi a gondod vele am ?
mit csinál vagy éppen mit nem ?

dexi

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #2 Dátum: 2011. november 22. - 17:55:27 »
0 Show voters
/109 -re ha szerelõ az illetõ akkor kiírja hogy szerelõt hívott XY(de sajnos XY egyenlõ azzal a playerrel akinek kiírja). Ha nem szerelõ egyszerûen csak kiírja hogy Várj amig elfogadják, és ennyi.. Szerelõnek semmit nem jelez az ég egy adta világon...
/elfogadsz -re ha szerelõ akkor kirak egy CP-t oda ahol van az adott szerelõ.  Sima playernek nem megy(Nem vagy szerelõ) <- De az utóbbi nem is baj hisz csak szerelõ használhatja.
Azt szeretném kérni tõletek hogy segítsetek megcsinálni ilyenre:
- /109 parancsra kiadja a \"SZERELO\" csapatnak hogy XY szerelõt hívott /elfogadsz [iD/NÉV] az elfogadáshoz. Csak akkor tudja használni ha egy player beírta hgy /109, ha már elfogadták ne lehessen beírni.
- /elfogadsz parancsot ID-re(vagy neves-re) megcsinálni, szóval ha Jóska_Pista hívott szerelõt és 12 az ID-je akkor /elfogadsz 12 (vagy) Jóska_Pista. Mikor elfogadtuk akkor állítsa be a playernek \"Jóska_Pista\" helyzetét(a hívóét, nem Jóska_Pistáét:D) egy CP-vel. Mikor elfogadta a  \"SZERELO\" akkor a playernek írja ki hogy \"Teszt_Elek elfogadta a hívásod, hamarosan itt lesz.\"
Valaki légyszi segítsen elõre köszi:)

Kovacs_Bela

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #3 Dátum: 2011. november 22. - 20:04:13 »
0 Show voters
Idézetet írta: dexi date=1321979928\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"13642\" data-ipsquote-contentclass=\"forums_Topic
Pórbálgattam egy szerelõ hívó és elfogadó parancsot... én is tudom hogy rossz lett mivel:
-Nem azt csinálja amit terveztem:D
Ha megkérhetlek titeket légyszives csináljátok meg. Gondolkoztam hogy lehetne megoldani az ÉN tudásommal... de hát nem sikerült=(...
Szerelõ hívás:
[pawn]///////////////////--SZERELÕ HÍVÁS////
      if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
   GetPlayerName(playerid, hivonev, sizeof(hivonev));
 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)
 {
   SendClientMessage(playerid,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");
   format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);
   SendClientMessage(playerid, -1, string);
   return 1;
      }
      else SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");
      return 1;
      }[/pawn]
Szerelõ elfogadás:
[pawn]if(strcmp(cmd, \"/elfogadsz\",true)== 0)
{
 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)
 {
    GetPlayerPos(playerid, X1,Y1,Z1);
    SetPlayerCheckpoint(playerid, X1,Y1,Z1,2);
   SendClientMessage(playerid,0x00ff22AA, \"Elfogadtad a hívást.\");
   return 1;
      }
      else SendClientMessage(playerid, 0xff0000AA, \"Nem vagy szerelõ.\");
      return 1;
      }[/pawn]
 
puff.. ugyanannak küldöd el aki felhívta?....



A következõ scripthez foreach kell. Foreach.inc:
\"\"http://www.slaakku.co.uk/images/download.png\"\"
 
[pawn]
///////////////////--SZERELÕ HÍVÁS////
if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
        GetPlayerName(playerid, hivonev, sizeof(hivonev));
                Foreach(Player,i)
                {
                   if(gMunka == SZERELO || gMunka == SZERELOLEADER)

                {


               SendClientMessage(i,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");


                  format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);


               SendClientMessage(i, -1, string);


               return 1;


                }


           else SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");


               }


       return 1;


        }[/pawn]


az elfogadást nem tudom megcsinálni mivel a többi parancsod strcmpvel van, ez meg zcmd/dcmd vagy valami más lenne, viszont akkor unknown commandot irna az összes parancsodra, én meg az strcmphez nem nagyon értek :\\

Nem elérhető Sramm

  • 596
    • Profil megtekintése
MI a gond ezzel a két parancsal?
« Válasz #4 Dátum: 2011. november 22. - 20:43:53 »
0 Show voters
De ez így biztos, hogy rossz lesz, mert az /elfogadsz parancsnál nem igazán passzolnak a dolgok.
Így:
[pawn]///////////////////--SZERELÕ HÍVÁS////
new szerelohivo;
new vanhivas;
if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
        GetPlayerName(playerid, hivonev, sizeof(hivonev));
                Foreach(Player,i)
                {
                   if(gMunka == SZERELO || gMunka == SZERELOLEADER)

                {


               SendClientMessage(i,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");


                  format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);


               SendClientMessage(i, -1, string);


                            SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");


                             szerelohivo = playerid;


                            vanhivas = 1;


               return 1;


                }


               }


       return 1;


        }


if(strcmp(cmd, \"/elfogadsz\",true)== 0)


{


 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)


 {


if(vanhivas == 0) return  SendClientMessage(playerid, 0xff0000AA, \"Nincs hívás, amit elfogadhatnál.\");


    GetPlayerPos(szerelohivo, X1,Y1,Z1);


    SetPlayerCheckpoint(playerid, X1,Y1,Z1,2);


   SendClientMessage(playerid,0x00ff22AA, \"Elfogadtad a hívást.\");


vanhivas = 0;


   return 1;


      }


      else return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy szerelõ.\");


      return 1;


      }[/pawn]


Robot, semmi köze a zcmd-hez.

dexi

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #5 Dátum: 2011. november 22. - 21:14:06 »
0 Show voters
[pawn]D:\\Games\\anyad\\3asdasd.pwn(1192) : error 017: undefined symbol \"Foreach\"
D:\\Games\\anyad\\3asdasd.pwn(1194) : error 017: undefined symbol \"i\"
D:\\Games\\anyad\\3asdasd.pwn(1196) : error 017: undefined symbol \"i\"
D:\\Games\\anyad\\3asdasd.pwn(1198) : error 017: undefined symbol \"i\"[/pawn]
Sorok:
1192:   Foreach(Player,i)
1194:   if(gMunka == SZERELO || gMunka == SZERELOLEADER)

1196:   SendClientMessage(i,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");


1198:   SendClientMessage(i, -1, string);

Kovacs_Bela

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #6 Dátum: 2011. november 22. - 21:15:40 »
0 Show voters
a mód elejére: #include <foreach> miután letöltötted..

dexi

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #7 Dátum: 2011. november 22. - 21:39:41 »
0 Show voters
Be include-ltam és ígyis...

Dupla hozzászólás automatikusan összefûzve. ( 2011. november 22. - 21:46:03 )

Megoldottam, a gond hogyha vki szerelõt hív akkor /elfogadsz-ra mindig azt írja hogy senki sem hívott szerelõt.
Megvan... megoldottam.. csak ha valaki szerelõt hív azt nem írja a szerelõnek... de eltudom fogadni.. csak nem írja hogy hívtak.
« Utoljára szerkesztve: 2011. november 22. - 22:43:27 írta dexi »

Nem elérhető Sramm

  • 596
    • Profil megtekintése
MI a gond ezzel a két parancsal?
« Válasz #8 Dátum: 2011. november 23. - 13:09:26 »
0 Show voters
[pawn]new szerelohivo;
new vanhivas;
if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
        GetPlayerName(playerid, hivonev, sizeof(hivonev));
        szerelohivo = playerid;
            vanhivas = 1;
                  for(new i = 0; i < MAX_PLAYERS; i++)
                {
                   if(gMunka == SZERELO || gMunka == SZERELOLEADER)

                {


               SendClientMessage(i,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");


                  format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);


               SendClientMessage(i, -1, string);


                    SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");


               return 1;


                }


               }


       return 1;


        }


if(strcmp(cmd, \"/elfogadsz\",true)== 0)


{


 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)


 {


         if(vanhivas != 1) return  SendClientMessage(playerid, 0xff0000AA, \"Nincs hívás, amit elfogadhatnál.\");


    GetPlayerPos(szerelohivo, X1,Y1,Z1);


    SetPlayerCheckpoint(playerid, X1,Y1,Z1,2);


   SendClientMessage(playerid,0x00ff22AA, \"Elfogadtad a hívást.\");


         vanhivas = 0;


   return 1;


      }


      else return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy szerelõ.\");


      return 1;


      }[/pawn]

double out

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #9 Dátum: 2011. november 23. - 13:16:34 »
0 Show voters
- deletedf xd

MI a gond ezzel a két parancsal?
« Válasz #10 Dátum: 2011. november 23. - 13:21:40 »
+1 Show voters
Double out így akarsz dupla HSZ t látszik az írásod alján hogy nincs oda írva hogy utoljára szerkesztette.. bla bla bla ezt csináltad h egybõl beírtad jó kis low gyerek vagy te

double out

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #11 Dátum: 2011. november 23. - 13:46:38 »
0 Show voters
Diggity\" post=\"195720\" timestamp=\"1322050900\"]
Double out így akarsz dupla HSZ t látszik az írásod alján hogy nincs oda írva hogy utoljára szerkesztette.. bla bla bla ezt csináltad h egybõl beírtad jó kis low gyerek vagy te
 
[/quote]
Nézz körül bárhol, nem vadászok hsz re. Nem olvastam végig a válaszokat és rögtön kattintottam a módosításra, nem tudom mért nem írta oda.
Tudom most jössz azzal, hogy hazudok meg minden, de oké.

Nem elérhető Sramm

  • 596
    • Profil megtekintése
MI a gond ezzel a két parancsal?
« Válasz #12 Dátum: 2011. november 23. - 13:59:25 »
+1 Show voters
PM-be vitatkozzatok.

dexi

  • Vendég
MI a gond ezzel a két parancsal?
« Válasz #13 Dátum: 2011. november 23. - 17:30:48 »
0 Show voters
Okés köszi megy:). És azt hogy tudom megoldani hogy  ne csak egy ember hívhasson szerelõt? Szóval ha épp 2-en hívtak akk ne csak az elsõt lehessen elfogadni?

Nem elérhető Sramm

  • 596
    • Profil megtekintése
MI a gond ezzel a két parancsal?
« Válasz #14 Dátum: 2011. november 24. - 14:30:15 »
0 Show voters
[pawn]new szerelohivo[5];
new vanhivas;
new szerelohivas;
if(strcmp(cmd, \"/119\",true)== 0)
{
   new hivonev[MAX_PLAYER_NAME];
   new string[128];
        GetPlayerName(playerid, hivonev, sizeof(hivonev));
                 szerelohivas +=1;
 if(szerelohivas == 1)
{
szerelohivo[0] = playerid;
}
 if(szerelohivas == 2)
{
szerelohivo[1] = playerid;
}
 if(szerelohivas == 3)
{
szerelohivo[2] = playerid;
}
 if(szerelohivas == 4)
{
szerelohivo[3] = playerid;
}
 if(szerelohivas == 5)
{
szerelohivo[4] = playerid;
}
            vanhivas = 1;
                  for(new i = 0; i < MAX_PLAYERS; i++)
                {
                   if(gMunka == SZERELO || gMunka == SZERELOLEADER)

                {


               SendClientMessage(i,0x00ff22AA, \"Figyelem, egy beérkezõ hívás.\");


                  format(string, sizeof(string), \"%s szerelõt hívott, /elfogadsz az elfogadásához.\", hivonev);


               SendClientMessage(i, -1, string);


                    SendClientMessage(playerid, 0xff0000AA, \"Szerelõt hívtál! Várj míg elfogadja egy szerelõ.\");


               return 1;


                }


               }


       return 1;


        }


if(strcmp(cmd, \"/elfogadsz\",true)== 0)


{


 if(gMunka[playerid] == SZERELO || gMunka[playerid] == SZERELOLEADER)


 {


         if(vanhivas != 1) return  SendClientMessage(playerid, 0xff0000AA, \"Nincs hívás, amit elfogadhatnál.\");


 if(szerelohivas == 1)


{


 GetPlayerPos(szerelohivo[0], X1,Y1,Z1);


}


 if(szerelohivas == 2)


{


 GetPlayerPos(szerelohivo[1], X1,Y1,Z1);


}


 if(szerelohivas == 3)


{


 GetPlayerPos(szerelohivo[2], X1,Y1,Z1);


}


 if(szerelohivas == 4)


{


 GetPlayerPos(szerelohivo[3], X1,Y1,Z1);


}


 if(szerelohivas == 5)


{


 GetPlayerPos(szerelohivo[4], X1,Y1,Z1);


}


    SetPlayerCheckpoint(playerid, X1,Y1,Z1,2);


   SendClientMessage(playerid,0x00ff22AA, \"Elfogadtad a hívást.\");


szerelohivas -= 1;


         vanhivas = 0;


   return 1;


      }


      else return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy szerelõ.\");


      return 1;


      }[/pawn]


Így már egyszerre 5 ember is tud hívni. Ha többet akarsz, csak folytatnod kell.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal