GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: [sdc]skyline - 2014. április 30. - 15:29:16

Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 15:29:16
Hellósztok.
Az lenne a kérdésem, hogy, hogyan lehetne azt lekérdezni, hogy egy adott Virtual World -be hány játékos van?
Mert úgy szeretném ha 2, vagy több, akkor lefusson az adott kód rész.
Elõre is köszönöm a segítséget(eket)!
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 15:39:58
talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 15:57:41
Hát nekem is mûködik.. de.. csak elsõ lekérdezésre.
Ha 1. nek kérdezem le akkor írja h 1 de ha utána még párszor mindig csak 0 át ír :s
Cím: VirtualWorld játékosok lekérése
Írta: kadaradam - 2014. április 30. - 16:01:45
Idézetet írta: huhboy date=1398865198\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
 
Hát nem így az biztos, de viszont jól gondolkodtál.
1. Minek globális változó?
2. Minek tömb?
3. Ezt nem igazán értem:
 
GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid)))

 
4.
 
new string[256];

 
Felesleges ekkora string méret. Bõven elég 40.



stock GetPlayersInVirtualWorld(world)
{
       new count;
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return count++;
       }
       return count;
}
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 16:03:15
Idézetet írta: kadaradam date=1398866505\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
Hát nem így az biztos, de viszont jól gondolkodtál.
 
hát na :D segíteni próbáltam ^^ xd
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 16:09:36
Idézetet írta: kadaradam date=1398866505\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic


talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
 
Hát nem így az biztos, de viszont jól gondolkodtál.
1. Minek globális változó?
2. Minek tömb?
3. Ezt nem igazán értem:
 
GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid)))

 
4.
 
new string[256];

 
Felesleges ekkora string méret. Bõven elég 40.



stock GetPlayersInVirtualWorld(world)
{
       new count;
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return count++;
       }
       return count;
}

 

[/quote]
Hát.. most lehet, hogy én vagyok a béna, de ezzel a kóddal is mindig 0 át ír :S Akárhogy próbáltam.
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 16:22:42
na megszületett....xddd
1000%-ban jó.
 

stock GetPlayersInVirtualWorld(playerid)
{
new count, vworld;
for(new x=0; x< MAX_PLAYERS; x++)
{
vworld = GetPlayerVirtualWorld(playerid);
if(IsPlayerConnected(x))
{
      if(GetPlayerVirtualWorld(x) == vworld)
   {
      count++;
   }
}
}
return count;
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(playerid));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
\"width=500http://kepfeltoltes.hu/140430/620295381sa-mp-000_www.kepfeltoltes.hu_.png[/img]
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 16:27:58
Idézetet írta: huhboy date=1398867762\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
na megszületett....xddd
1000%-ban jó.
 

stock GetPlayersInVirtualWorld(playerid)
{
new count, vworld;
for(new x=0; x< MAX_PLAYERS; x++)
{
vworld = GetPlayerVirtualWorld(playerid);
if(IsPlayerConnected(x))
{
      if(GetPlayerVirtualWorld(x) == vworld)
   {
      count++;
   }
}
}
return count;
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(playerid));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
\"width=500http://kepfeltoltes.hu/140430/620295381sa-mp-000_www.kepfeltoltes.hu_.png[/img]
 
Nagyon szépen köszönöm, tényleg mûködik!
Ment a +, mindenkinek!:)
E: Zárom a témát.
E2: De.. Azt hogy kéne, hogy ha konkrét virtualword ot szeretnék lekérni? nem egy játékosét? hanem pl beírom h az 5 öst akkor azért, vagy is érted mit szeretnék :D
E3: Megoldottam!xd Köszi szépen!
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 15:29:16
Hellósztok.
Az lenne a kérdésem, hogy, hogyan lehetne azt lekérdezni, hogy egy adott Virtual World -be hány játékos van?
Mert úgy szeretném ha 2, vagy több, akkor lefusson az adott kód rész.
Elõre is köszönöm a segítséget(eket)!
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 15:39:58
talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 15:57:41
Hát nekem is mûködik.. de.. csak elsõ lekérdezésre.
Ha 1. nek kérdezem le akkor írja h 1 de ha utána még párszor mindig csak 0 át ír :s
Cím: VirtualWorld játékosok lekérése
Írta: kadaradam - 2014. április 30. - 16:01:45
Idézetet írta: huhboy date=1398865198\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
 
Hát nem így az biztos, de viszont jól gondolkodtál.
1. Minek globális változó?
2. Minek tömb?
3. Ezt nem igazán értem:
 
GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid)))

 
4.
 
new string[256];

 
Felesleges ekkora string méret. Bõven elég 40.



stock GetPlayersInVirtualWorld(world)
{
       new count;
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return count++;
       }
       return count;
}
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 16:03:15
Idézetet írta: kadaradam date=1398866505\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
Hát nem így az biztos, de viszont jól gondolkodtál.
 
hát na :D segíteni próbáltam ^^ xd
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 16:09:36
Idézetet írta: kadaradam date=1398866505\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic


talán így: (nem biztos, hogy jó.)
 

new PlayersInWorld[50];
stock GetPlayersInVirtualWorld(world)
{
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return PlayersInWorld[world]++;
       }
       return PlayersInWorld[world];
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid))));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
E: idõ közben leteszteltem, nálam mûködik :D :thumbsup:
 
Hát nem így az biztos, de viszont jól gondolkodtál.
1. Minek globális változó?
2. Minek tömb?
3. Ezt nem igazán értem:
 
GetPlayersInVirtualWorld(GetPlayersInVirtualWorld(GetPlayerVirtualWorld(playerid)))

 
4.
 
new string[256];

 
Felesleges ekkora string méret. Bõven elég 40.



stock GetPlayersInVirtualWorld(world)
{
       new count;
       for(new i=0;i<MAX_PLAYERS;i++)
       {
                if(GetPlayerVirtualWorld(i) == world) return count++;
       }
       return count;
}

 

[/quote]
Hát.. most lehet, hogy én vagyok a béna, de ezzel a kóddal is mindig 0 át ír :S Akárhogy próbáltam.
Cím: VirtualWorld játékosok lekérése
Írta: huhboy - 2014. április 30. - 16:22:42
na megszületett....xddd
1000%-ban jó.
 

stock GetPlayersInVirtualWorld(playerid)
{
new count, vworld;
for(new x=0; x< MAX_PLAYERS; x++)
{
vworld = GetPlayerVirtualWorld(playerid);
if(IsPlayerConnected(x))
{
      if(GetPlayerVirtualWorld(x) == vworld)
   {
      count++;
   }
}
}
return count;
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(playerid));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
\"width=500http://kepfeltoltes.hu/140430/620295381sa-mp-000_www.kepfeltoltes.hu_.png[/img]
Cím: VirtualWorld játékosok lekérése
Írta: [sdc]skyline - 2014. április 30. - 16:27:58
Idézetet írta: huhboy date=1398867762\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"47981\" data-ipsquote-contentclass=\"forums_Topic
na megszületett....xddd
1000%-ban jó.
 

stock GetPlayersInVirtualWorld(playerid)
{
new count, vworld;
for(new x=0; x< MAX_PLAYERS; x++)
{
vworld = GetPlayerVirtualWorld(playerid);
if(IsPlayerConnected(x))
{
      if(GetPlayerVirtualWorld(x) == vworld)
   {
      count++;
   }
}
}
return count;
}
CMD:asd(playerid, params[])
{
       new string[256];
       format(string, sizeof(string), \"A te világodban %d játékos van!\", GetPlayersInVirtualWorld(playerid));
       SendClientMessage(playerid, -1, string);
       return 1;
}

 
\"width=500http://kepfeltoltes.hu/140430/620295381sa-mp-000_www.kepfeltoltes.hu_.png[/img]
 
Nagyon szépen köszönöm, tényleg mûködik!
Ment a +, mindenkinek!:)
E: Zárom a témát.
E2: De.. Azt hogy kéne, hogy ha konkrét virtualword ot szeretnék lekérni? nem egy játékosét? hanem pl beírom h az 5 öst akkor azért, vagy is érted mit szeretnék :D
E3: Megoldottam!xd Köszi szépen!