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

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: MaulTomy - 2011. Május 13. - 20:52:01

Cím: Elsõ Scriptem. RP Chat
Írta: MaulTomy - 2011. Május 13. - 20:52:01
Szevasztok!
 
Szeretném közzétenni az elsõ, egyszerû szkriptemet. (Pár napja kezdtem használni a Pawno-t)

Ez egy RP Chat, tartalmaz.:

 
- /k(/k [iC szöveg])(Saját_Neved mondja.: szöveg)
- Normál írás(IC chat) (Simán szöveget kell beírni)(Csak egy bizonyos távolságig látszik!)(Ismeretlen mondja.: szöveg)
- /b(/b [OOC szöveg])(  Saját_Neved OOC.: (( Szöveg ))   )
- /va(/va [cselekvés])(* Valaki cselekvés)
- /me (/me [cselekvés])(* Saját_Nevem cselekvés)
- /do (/do Történés)(** történés)
Töltsd le itt!
Most írom még a kiabálást, és a suttogást,ahogy készen van, feltöltöm azt is!
Cím: Elsõ Scriptem. RP Chat
Írta: jana4 - 2011. Május 13. - 20:57:35
Kicsit gyanús... de ha tényleg te irtad akkor grat. amúgy:
[pawn]new pName[100 char];[/pawn]
lol, minek oda a char? ;D
Cím: Elsõ Scriptem. RP Chat
Írta: Stricica - 2011. Május 13. - 21:06:05
Nem rossz, nem rossz :)
Csak így tovább  ^-^
Cím: Elsõ Scriptem. RP Chat
Írta: MaulTomy - 2011. Május 13. - 21:08:18
A \"char\" azért van ott, mert egy tutorialt néztem, példának, és ott láttam, és azt hittem kell oda.

Dupla hozzászólás automatikusan összefûzve. ( 2011. Május 13. - 21:26:46 )

Elrontottam! Most néztem, hogy a sima beszéden kivül a többit mindenki látja, valaki segítene, mert valamit nagyon elrontottam, vagy a tutorial nem jó RP-re.
SendMessageToAll

 Itt lesz a gond, mit írjak helyette, hogy meg tudjam adni a távolságot is, hogy hol lássák? Vagy egy Tutorialt linkelnétek, hogy meg tanulhassam? :( :-[
Cím: Elsõ Scriptem. RP Chat
Írta: ZeRo - 2011. Május 13. - 21:35:23
Elsõnek nem rossz grat. ;) Csak pár tipp:
 
Cím: Elsõ Scriptem. RP Chat
Írta: Stricica - 2011. Május 13. - 21:56:51
Idézetet írta: MaulTomy date=1305313698\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"8132\" data-ipsquote-contentclass=\"forums_Topic
A \"char\" azért van ott, mert egy tutorialt néztem, példának, és ott láttam, és azt hittem kell oda.

Dupla hozzászólás automatikusan összefûzve. ( 2011. Május 13. - 21:26:46 )

Elrontottam! Most néztem, hogy a sima beszéden kivül a többit mindenki látja, valaki segítene, mert valamit nagyon elrontottam, vagy a tutorial nem jó RP-re.
SendMessageToAll

 Itt lesz a gond, mit írjak helyette, hogy meg tudjam adni a távolságot is, hogy hol lássák? Vagy egy Tutorialt linkelnétek, hogy meg tanulhassam? :( :-[
 
Itt.
Van az RP chatról, és a /me-rõl is.
Cím: Elsõ Scriptem. RP Chat
Írta: MaulTomy - 2011. Május 13. - 22:53:44
Köszi, a választ, megnéztem a linket, de az a problémám, hogy itt azt nem írja le, hogy csinálatom meg, hogy ne csak sima írásnál legyen így, szóval azt szeretném, hogy mondjuk /b /k /s STB.... Mindt távolsághoz kötött legyen.
Cím: Elsõ Scriptem. RP Chat
Írta: ►ѕтa - 2011. Június 03. - 07:39:51
ProxDetector.
[pawn]
stock ProxDetector(Float:radi, playerid, ta[],col1,col2,col3,col4,col5)
{
if(IsPlayerConnected(playerid))
{
   new Float:posx, Float:posy, Float:posz;
   new Float:oldposx, Float:oldposy, Float:oldposz;
   new Float:tempposx, Float:tempposy, Float:tempposz;
   GetPlayerPos(playerid, oldposx, oldposy, oldposz);
   //radi = 2.0; //Trigger Radius
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i) && (GetPlayerVirtualWorld(playerid) == GetPlayerVirtualWorld(i)))
      {
         if(!BigEar)

         {


            GetPlayerPos(i, posx, posy, posz);


            tempposx = (oldposx -posx);


            tempposy = (oldposy -posy);


            tempposz = (oldposz -posz);


            //printf(\"DEBUG: X:%f Y:%f Z:%f\",posx,posy,posz);


            if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))


            {


               SendClientMessage(i, col1, ta);


            }


            else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))


            {


               SendClientMessage(i, col2, ta);


            }


            else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))


            {


               SendClientMessage(i, col3, ta);


            }


            else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))


            {


               SendClientMessage(i, col4, ta);


            }


            else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))


            {


               SendClientMessage(i, col5, ta);


            }


         }


         else


         {


            SendClientMessage(i, col1, ta);


         }


      }


   }


}//not connected


return 1;


}[/pawn]
Cím: Elsõ Scriptem. RP Chat
Írta: Zsolesszka - 2011. Június 03. - 18:32:58
Én ajánlanám esetleg az IsPlayerStreamedIn függvényt igaz itt nem tudod a scriptben állítani a távolságot.
De alapból ha jól tudom egy 300-as sugarú körben lévõ playerek-re ad igaz értéket. Egyszerûbben fogalmazva azokra ad igaz értéket akik láthatóak számodra a játékban, a másik játékos karakterét megjeleníti (látható) a te képernyõdön.
Vagy amit erre a célra használhatsz azaz IsPlayerInRangeOfPoint. Itt már tudod állítani hogy mekkora sugarú körben keresse a közeledben lévõ (tárgyat, játékost, egyebet).