Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-05-26, 20:12


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Witam, mam 2 pytania i 1 problem.

1 pytanie... u?ywam na swoim GM takiej funkji




Pawn
if(dialogid == 555)
    {
        if(response)
         {
            switch(listitem)
              {
                      case 0:SetPlayerPos(playerid1530.1174,-890.0798,61.1226); // Pozycje LS
                    case 1:SetPlayerPos(playerid2353.2458,1510.5374,42.8203); // Pozycje LV
                    case 2:SetPlayerPos(playerid, -2275.6655,215.0100,35.1641); // Pozycje SF
            }
          }
    }

    return 1;
}


Dzia?a ona tak jak chcia?em ale jak doda? do niej wi?cej spawn?w bo tutaj
mo?na ustawi? tylko 1.. a ja chce ?eby przynajmniej 5 spawn?w na miasto...

2 pytanie... widzia?em to na wielu serwerach.. jak zrobi? tak aby pokazywa?o ile graczy jest w danym mie?cie...

Czy uwa?acie t? opcje za przestarza??? Co polecacie?


3 i mam taki problem.. nie dotyczy to temat?w podanych powy?ej..

Nie wiem sk?d mi si? wdzi?? ten warning..


Kod:

[E:\samp serwer 0.3x\pawno\NoraDM.pwn(1868) : warning 217: loose indentation
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


1 Warning.


Ostatnio zmieniony przez KyO 2013-05-26, 20:16, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-26, 20:16


__.A.__







Wiek: 30
Na forum: 5170 dni
Posty: 151

Piwa: 855

Respekt: 110
Respekt: 110

dodaj na g?re mapy

Kod:

#pragma tabsize 0


Podpis
new map test beta:

ip serwera: 80.72.36.203:4056
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-26, 20:18


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
yyy.. nic to nie da?o nadal ten warning jest.. ale nie wiem od czego jest wywolany i czy mo?e przeszkadza? w normalnym dzialaniu GM'a


Edit/// nie wiem co to oznacza.. "#pragma tabsize 0" ale pomoglo..mozesz mi wyt?umaczy?? Dawa?em to nad include xd mo?e dlatego..


Edit2/// a pomozesz zrobi? te losowe spawny za pomoc? tego kodu co ja u?ywam

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-26, 20:23


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

#1 -> http://wiki.sa-mp.com/wiki/Random
#2 ->
Kod:

new Float:Pos[3];
GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
if( Pos[0] >= gminX && Pos[0] <= gmaxX && Pos[1] >= gminY && Pos[1] <= gmaxY )


^ Kod ?ywcem wyci?gni?ty z systematyki dzia?ania Gang Zon?w. Kod sprawdza, czy gracz znajduje si? na terenie danego obszaru (czterok?ta). Je?li tak, mo?na co? z tym zrobi? np.:

Kod:

new lsCount;//globalnie


Funkcja zliczaj?ca graczy, np z LS (koordy musisz sobie sam poda?):

Kod:

lsCount = 0;

for(new i=0;i<MAX_PLAYERS;i++)
{
new Float:Pos[3];
GetPlayerPos(i, Pos[0], Pos[1], Pos[2]);
if( Pos[0] >= gminX && Pos[0] <= gmaxX && Pos[1] >= gminY && Pos[1] <= gmaxY )
lsCount+= 1;
}


#3 -> http://lmgtfy.com/?q=warn...ose+indentation

Pierwsza strona, co z tego ?e konkurencyjna? Ale podaje odpowied?:

G?ra mapy:

Kod:

#pragma tabsize 0


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-26, 20:32


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Nie zrozumia?em odpowiedzi 1... to s? ca?kiem nowe odmienione spawny?

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-26, 20:34


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Ka?dy gracz spawnuje si? za ka?dym razem w innych miejscach podanych na tablicy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 14:29


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Dzi?ki za odpowied? ale mam jeszcze nurtuj?ce mnie pytanie... jak doda? ten kod kt?ry mi poda?e? w pkt 1... i gdzie doda? liste spawn?w.. jak na tablice? Nie chce gotowca.. tylko nakieruj nie jestem odporny na wiedze... ;) Z g?ry dzi?ki za dalsz? pomoc b?de stawia? bronki ;)

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 15:14


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"KyO" napisał/a:

b?de stawia? bronki ;)


Gdyby? kupi? mi paczk? L&M?w albo chocia? zaprosi? do mnie dwie swoje, do?? atrakcyjne kole?anki, kt?re po ci??kim dniu niesienia wam pomocy, ul?? mi ma?ym masa?em ustami, tego czego? co zazwyczaj powiewa m??czyznom pomi?dzy nogami, sprawa wygl?da?aby o wiele inaczej.

Piwa nie pijam.

Kod:

new Float:RandomSpawn[][4] =
{
// Positions, (X, Y, Z and Facing Angle)
{-2796.9854, 1224.8180, 20.5429, 192.0335},
{-2454.2170, 503.8759, 30.0790, 267.2932},
{-2669.7322, -6.0874, 6.1328, 89.8853}
};


Masz se now? tablice nie ziomeczgu. Jako, ?e pozycja to Float (czyli jednostka np. 0.50 z?oty (integer to 1 z?oty, bez groszy)) to musisz tak te? j? zdefiniowa?:

Kod:

new Float:guwno;


Taka tablica mo?e mie?ci? w sobie warto?ci z przecinkiem.

Teraz o samych tablicach kwadratowych wi?cej do powiedzenia mia? m?j kolega z forum sa-mp.com, kt?ry dog??bnie przedstawi? temat tablic. http://gtao.pl.com/showthread.php?t=318212 Przez to nie b?d? ju? Ci t?umaczy? dlatego ten Pan u?y? tych ?miesznych kwadratowych nawias?w za definicj? zmiennej -> [][4]. Powiem Ci tylko, ?e u?y? tam jednostki 4 z tego wzgl?du, ?e jedna zmienna posiada 4 warto?ci (4 pozycje - x, y, z, angle).

Dobra. Temat samej tablicy chyba zosta? wyczerpany. Przechodzimy dalej.

public OnPlayerSpawn(playerid) gracz si? spawnuje na mapi?. Mo?emy wtedy go zamordowa?, zarazi? rakiem, nas?a? na niego ?ysego i jego ziomali. Co tylko chcemy, wyb?r nale?y do nas!

Ale my nie.. my jeste?my miernymi polaczgami, kt?re po prostu chc? zespawnowa? gracza gdzie? na wypizdowie. Zatem m?j drogi Przyjacielu i Kompanie w udr?ce ?yciowej, teraz musimy pobra? pozycje z tablicy, ale chwila! Chcemy je pobra? losowo. Do tego te? u?yjemy funkcji random, kt?ra w tym przypadku wygl?da tak:

Kod:

new rand = random(sizeof(RandomSpawn));


^ Zarejestrowali?my na szybko now? zmienn? i u?yli?my funkcji random na tablicy RandomSpawn (to wcze?niejsze o kt?rym wspomina?em). Ale teraz spytasz po ki uj, mi mistrzowi pawno sizeof? A w?a?nie po to, ?e sizeof sprawdza maksymaln? wielko?? tablicy ([] [4]). Przez to random mo?e wylosowa? jak?? warto?? ze wszystkich liczb na tablicy.

No ale dobra. Mamy now? zmienn?, nadpisali?my na ni? losowy wynik. Teraz chcemy zespawnowa? gracza, co nie ziomeczgu?

Jak ju? wspomnia?em w tablicy mamy cztery warto?ci. X, Y, Z, Angle (pozycja ?wiata 2d (X, Y) + Z wysoko?? + Angle = obr?t samego gracza, czyli czy patrzysz si? na p??noc, po?udnie, zach?d czy mo?e jeste? metalem i podpalasz koty a przy tym patrzysz na wsch?d).

Po pierwsze u?yjemy funkcji SetPlayerPos, aby ustawi? pozycj? X, Y oraz Z.

Kod:

SetPlayerPos(playerid, RandomSpawn[rand][0], RandomSpawn[rand][1], RandomSpawn[rand][2]);


Teraz pozycj? pobieramy z tablicy RandomSpawn (o kt?rej mowa by?a jak zwykle na samym pocz?tku, ale! po uj nam tutaj rand?) - a no po to, ?e dzi?ki rand znale?li?my sobie losowy wynik z tablicy. Przez to ustawimy pozycj? naszego Hitlera, kt?ry wszed? na nas serwer na jaki? losowy szajsung.

Teraz ostatnie obr?t gracza wedle ?wiata (pami?taj - wsch?d (peda? i pali koty)).

Zatem u?ywamy na pocz?tek ustawienia pozycji gracza, a potem jego obrotu wedle naszego CUDOWNEGO ?WIATA WSZECHGRY.

Kod:

SetPlayerPos(playerid, RandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);
SetPlayerFacingAngle(playerid, RandomSpawn[rand][3]);


To chyba tyle.

Nie zapomnij o mnie, jak b?dziesz ju? kiedy? w dalekiej przysz?o?ci szefem firmy weso?y serwer truck company i b?dziesz zamawia? dziwki na lewo i prawo.

Pozdrawiam!

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 16:13


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Stary.. umiesz zach?ci? do czytania moge Cie ewentualnie pocz?stowa? Lucky Strikiem z klikiem cytryny.. chyba ze tylko LM? Dobra a co do pawn.. przestudiuje.. pobawie si? na b??dach.. dzi?ki wielkie bronek i tak leci ;) 5!

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 16:14


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"KyO" napisał/a:

Stary.. umiesz zach?ci? do czytania moge Cie ewentualnie pocz?stowa? Lucky Strikiem z klikiem cytryny.. chyba ze tylko LM? Dobra a co do pawn.. przestudiuje.. pobawie si? na b??dach.. dzi?ki wielkie bronek i tak leci ;) 5!


Jak czego? nie umiesz, to pisz. Nie lubi? niewiedzy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 16:38


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Hmm... mi wyskakuj? errory.. po SetPlayerPos maj? by? jakie? kordy?


Errory:

[code]E:\samp serwer 0.3x\pawno\NoraDM.pwn(1887) : error 017: undefined symbol "RandomSpawn"
E:\samp serwer 0.3x\pawno\NoraDM.pwn(1887) : error 017: undefined symbol "rand"
E:\samp serwer 0.3x\pawno\NoraDM.pwn(1887) : error 029: invalid expression, assumed zero
E:\samp serwer 0.3x\pawno\NoraDM.pwn(1887) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.
[/error]

Pawn
public OnPlayerSpawn(playerid)
{

SetPlayerPos(playeridRandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);
SetPlayerFacingAngle(playeridRandomSpawn[rand][3]);


    return 1;
}


G?ra mapy...

Pawn
new Float:RandomSpawn[][4] =
{
    // Positions, (X, Y, Z and Facing Angle)
    {-2796.98541224.818020.5429192.0335},
    {-2454.2170503.875930.0790267.2932},
    {-2669.7322, -6.08746.132889.8853}
}

new Float:LosowySpawn;

new rand random(sizeof(RandomSpawn));


Jestem jeszcze nowy co zrobi?em ?le?Dok?adnie przeczyta?em to co napisa?e? ale mog?em si? gdzies pomyli?... z g?ry dzieki za pomoc

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 16:40


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

http://wiki.sa-mp.com/wiki/Random zajrzyj tutaj jeszcze raz.

Zauwa?, ?e w tym co napisa?em u?y?em tylko przyk?adowy (Float:guwno - tego nie musisz u?ywa?).

U?yj to tak jak bezpo?rednio jest na wiki.

Tablice globalnie, a ca?a reszta w OnPlayerSpawn.

[ Dodano: 2013-05-27, 16:41 ]
Kod:

new Float:RandomSpawn[][4] =
{
// Positions, (X, Y, Z and Facing Angle)
{-2796.9854, 1224.8180, 20.5429, 192.0335},
{-2454.2170, 503.8759, 30.0790, 267.2932},
{-2669.7322, -6.0874, 6.1328, 89.8853}
};


^ Globalnie.

Kod:

public OnPlayerSpawn(playerid)
{
new rand = random(sizeof(RandomSpawn));

// SetPlayerPos to the random spawn data
SetPlayerPos(playerid, RandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);

// SetPlayerFacingAngle to the random facing angle data
SetPlayerFacingAngle(playerid, RandomSpawn[rand][3]);
return 1;
}


^ Public.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 16:53


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Dobra ju? sobie poradzi?em z tymi warnami i errorami. Ale mam 2 pytania od czego to jest?

Kod:

#else
#endif


Oraz jak doda? wi?cej losowych spawn?w?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 17:44


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Kod:

public OnPlayerSpawn(playerid)
{
new rand = random(sizeof(RandomSpawn));

SetPlayerPos(playerid, RandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);
SetPlayerFacingAngle(playerid, RandomSpawn[rand][3]);
return 1;
}


+

Kod:

new Float:RandomSpawn[][4] =
{
{-2796.9854, 1224.8180, 20.5429, 192.0335},
{-2454.2170, 503.8759, 30.0790, 267.2932},
{-2669.7322, -6.0874, 6.1328, 89.8853}
};


To globalnie.

Process started >>>
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

<<< Process finished. (Exit code 0)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-05-27, 18:54


KyO

CENZOR






Wiek: 31
Na forum: 4768 dni
Posty: 101
Nick w MP: CENZOR

Piwa: 59

Respekt: 47,3

Ostrzeżeń: 20%
Kurde... wszystko ?adnie dzia?a pieknie ale zastanawia mnie jedno... co zrobi?em ?le ?e np. po zabiciu si? respie si? 2 razy w tym samym miejscu?! Pr?bowa?em usuwa? to i tamto w tym kodzie aby sprawdzi? ale ten warny..

G?ra

Pawn

//Losowe spawny

new Float:RandomSpawn[][4] =
{
    // Positions, (X, Y, Z and Facing Angle)
    {2493.6064,-1667.8224,13.3438},//ls
    {333.0471,-1775.8112,5.0391},//ls
    {-2566.6370,578.8499,14.4558},//sf
    {-1806.1595,1082.5757,45.3525},//sf
    {2302.8413,2154.5344,10.6719},//lv
    {2457.3237,1319.0468,10.8203}//lv
};


Public

Pawn
public OnPlayerSpawn(playerid)
{
    new rand random(sizeof(RandomSpawn));

    // SetPlayerPos to the random spawn data
    SetPlayerPos(playeridRandomSpawn[rand][0], RandomSpawn[rand][1],RandomSpawn[rand][2]);

    // SetPlayerFacingAngle to the random facing angle data
    SetPlayerFacingAngle(playeridRandomSpawn[rand][3]);
    return 1;
    }


Podpis


Postaw piwo autorowi tego posta
 

 
Tagi: losowe :: spawny..
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku