Szerző Téma: Elsõ Scriptem. RP Chat  (Megtekintve 4706 alkalommal)

Elsõ Scriptem. RP Chat
« Dátum: 2011. Május 13. - 20:52:01 »
0
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!
« Utoljára szerkesztve: 2011. November 13. - 09:43:15 írta Jethro »

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
Elsõ Scriptem. RP Chat
« Válasz #1 Dátum: 2011. Május 13. - 20:57:35 »
0
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

Elsõ Scriptem. RP Chat
« Válasz #2 Dátum: 2011. Május 13. - 21:06:05 »
0
Nem rossz, nem rossz :)
Csak így tovább  ^-^

Elsõ Scriptem. RP Chat
« Válasz #3 Dátum: 2011. Május 13. - 21:08:18 »
0
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? :( :-[
« Utoljára szerkesztve: 2011. Május 13. - 21:27:12 írta MaulTomy »

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
Elsõ Scriptem. RP Chat
« Válasz #4 Dátum: 2011. Május 13. - 21:35:23 »
0
Elsõnek nem rossz grat. ;) Csak pár tipp:
 
  • Az OnPlayerText függvényben van egy \'str\' nevû vektorod 200 cellával. A SAMP chatboxba maximum 128 karaktert írhatsz ki egy üzenetben, szóval a többi pocséklás.

  • Ugyanitt; A játékos pozícióját a ciklustörzsben kérdezed le, amit azt jelenti, hogy 500-szor fogja lekérdezni a pozícióját minden egyes üzenet beírásánál, ez szerintem érthetõ, hogy elég pazarló megoldás.

  • Egy játékos neve maximum 24 karakter lehet, te majdnem kétszer annyit adtál meg. A 24 helyett nyugodtan használhatod a MAX_PLAYER_NAME szimbólumot, ha az elején nem tudnád megjegyezni.


Elsõ Scriptem. RP Chat
« Válasz #5 Dátum: 2011. Május 13. - 21:56:51 »
0
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.

Elsõ Scriptem. RP Chat
« Válasz #6 Dátum: 2011. Május 13. - 22:53:44 »
0
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.

Nem elérhető ►ѕтa

  • 2016
  • Newbie
    • Profil megtekintése
Elsõ Scriptem. RP Chat
« Válasz #7 Dátum: 2011. Június 03. - 07:39:51 »
0
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]

Elsõ Scriptem. RP Chat
« Válasz #8 Dátum: 2011. Június 03. - 18:32:58 »
0
É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).

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal