Wysłany: 2018-03-09, 09:31
MG303
Wiek: 30 Na forum: 6418 dni Posty: 654
Piwa : 2990
Pawn switch( zmienna [ playerid ])
{
case 1 : //zmienna==1
{
//co?
}
case 2 : //zmienna==2
{
//co?
}
//itd
}
//pisze z tel
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-09, 12:02
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
a nie da si? jako? zrobi?
?eby wy?wietlano po prostu tyle x jaka jest warto?? zmiennej?
Np send.. Zmienna "x"
Wysłany: 2018-03-09, 12:57
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Oczywi?cie, ?e si? da. Jest taka przydatna funkcja, kt?ra wype?nia tablic? konkretnym znakiem.
Pawn memset ( aArray [], iValue = 0 , iSize = sizeof aArray )
{
new iAddress ;
#emit LOAD.S.pri 12
#emit STOR.S.pri iAddress
iSize *= 4 ;
while( iSize > 0 )
{
if( iSize >= 4096 )
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 4096
iSize -= 4096 ;
iAddress += 4096 ;
}
else if( iSize >= 1024 )
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 1024
iSize -= 1024 ;
iAddress += 1024 ;
}
else if( iSize >= 256 )
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 256
iSize -= 256 ;
iAddress += 256 ;
}
else if( iSize >= 64 )
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 64
iSize -= 64 ;
iAddress += 64 ;
}
else if( iSize >= 16 )
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 16
iSize -= 16 ;
iAddress += 16 ;
}
else
{
#emit LOAD.S.alt iAddress
#emit LOAD.S.pri iValue
#emit FILL 4
iSize -= 4 ;
iAddress += 4 ;
}
}
#pragma unused aArray
}
//gdzies dalej
new lString [ 50 ]; //w razie czego zmien sobie rozmiar tablicy, jesli masz wiecej znakow
memset ( lString , 'X' , 20 ); //20 to ilosc znakow
print( lString ); //XXXXXXXXXXXXXXXXXXXX
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-09, 21:00
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
Combacior prawie dobrze ale niewiem czemu jest taki b??d:
https://zapodaj.net/303059b1a1f82.png.html
P.S. Chodzi po to ze z ma?ych liczb na du?e dobrze liczy X ale z du?ych na ma?e nie bo zostawia t? najwieksz? nwm czemu zerowa?em przed sprawdzaniem to nic nie daje
[ Dodano : 2018-03-09, 21:56 ]
a da?em to w ten spos?b:
memset(lString, 'X', Zmienna);
//tu wyswietlanie
a wiec powinno dzia?ac a tak nie jest
Wysłany: 2018-03-10, 13:26
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Tablic? trzeba wyzerowa? przed ponownym u?yciem tego, bo ta funkcja zmienia tylko dane w tablicy do pewnego momentu (tyle, ile ustawisz), a reszta nie jest usuwana.
Kod: new lString[50];
memset(lString, 'X', 20);
//
lString[0] = EOS; //EOS = End Of String
memset(lString, 'X', 10);
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-11, 14:58
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
Wysłany: 2018-03-11, 16:33
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
M?j b??d, zamiast
Kod:
Wstaw
Kod:
To wyczy?ci ca?? tablic?, bo poprzedni spos?b czy?ci? tylko pierwszy indeks.
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-11, 20:58
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
dzi?ki dzia?a mam jeszce jedn? ostatni? spraw? czy to jest optymalne dla 100item?w czy da sie jakos inaczej to ogarnac?
Kod: if(modelp[playerid] == Plecakprzedmiot[0][item_model])
{
format(pstring,sizeof(pstring),"%s",Plecakprzedmiot[0][item_opis]);
SendClientMessage(playerid,-1,pstring);
RemoveItem(playerid,modelp[playerid]);
}
if(modelp[playerid] == Plecakprzedmiot[1][item_model])
{
format(pstring,sizeof(pstring),"%s",Plecakprzedmiot[1][item_opis]);
SendClientMessage(playerid,-1,pstring);
RemoveItem(playerid,modelp[playerid]);
}
https://pastebin.com/jW0hLn24
Wysłany: 2018-03-12, 00:42
Combacior
Wiek: 29 Na forum: 5796 dni Posty: 1516
Piwa : 2161
Jak najbardziej jest optymalne, ale chce ci si? tak 100 razy kopiuj/wklej i zmienia? liczby? A co zrobisz jak b?dziesz chcia? co? zmieni?? B?dziesz musia? w ka?dym warunku zrobi? te zmiany. Od tego s? p?tle, poczytaj o nich. Optymalno?? jak najbardziej jest jedn? z wa?niejszych rzeczy, ale r?wnie wa?ne jest pisanie kodu tak, aby by? on czytelny oraz ?atwy do szybkiej modyfikacji w razie potrzeby.
Kod: format(pstring,sizeof(pstring),"%s",Plecakprzedmiot[1][item_opis]);
Swoj? drog?, nie w taki spos?b u?ywa si? funkcji format. Je?li tylko kopiujesz jedn? tablic? do drugiej, to u?yj funkcji strcpy -> http://gtao.pl.com/showpo...209&postcount=4
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-13, 21:16
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
Dobra ogarn??em juz Teraz tylko pytanko jak zrobic zeby zablokowac mozliwosc wyjscia z auta gdy masz zapiete poasy
i gdzie to dac?
If(zmiennaodpasow[playerid] == 1)
{
//co tutaj
}
Wysłany: 2018-03-13, 21:38
MG303
Wiek: 30 Na forum: 6418 dni Posty: 654
Piwa : 2990
Ostatnio zmieniony przez MG303 2018-03-13, 21:46, w całości zmieniany 1 raz
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-13, 21:44
macks
Wiek: 18 Na forum: 3578 dni Posty: 1002
Piwa : 2856
Pawn public OnPlayerExitVehicle ( playerid , vehicleid )
{
If( zmiennaodpasow [ playerid ] == 1 )
{
PutPlayerInVehicle ( playerid , vehicleid , 0 );
}
return 1 ;
}
O ile si? nie myl?, mo?e by? te? potrzebne pobranie pozycji gracza, jak i id pojazdu.
http://gtao.pl.com/showthread.php?t=136250
Ostatnio zmieniony przez macks 2018-03-13, 21:53, w całości zmieniany 1 raz
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-13, 21:46
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
Jaglak czemu przy wejsciu to robisz?
[ Dodano : 2018-03-13, 21:48 ]
Kod: public OnPlayerExitVehicle(playerid, vehicleid)
{
If(zmiennaodpasow[playerid] == 1)
{
PutPlayerInVehicle(playerid, vehicleid, 0);
}
return 1;
}
to nie dzia?a kiedys to robi?em ale uzywa?em wtedy innego publica niz exitbehicle nwm czy nie :
OnPlayerStateChange
Ale to nie dzia?a nwm czemu jednak OnPlayerStateChange tez nie dzia?a to nwm
[ Dodano : 2018-03-13, 22:09 ]
ClearAnimations(playerid);
PutPlayerInVehicle(playerid, vehicleid, 0);
zrobi?em tak dzia?a ale kazdego daje na kierowce a ja chce zeby zostawali na swoich pozycjach jak to zrobic?
Wysłany: 2018-03-14, 05:44
MG303
Wiek: 30 Na forum: 6418 dni Posty: 654
Piwa : 2990
Więcej szczegółów
Wystawiono 1 piw(a):Lucenzo
Wysłany: 2018-03-14, 20:13
Lucenzo
Wiek: 33 Na forum: 3010 dni Posty: 31
Nick w MP: Kotuń
Piwa : 2
okej
a teraz mam problem ze nie umiem zrobic komendy na
/komenda [id gracza] [wartosc]
pom?g? by ktos i wyt?umaczy? dlaczego tak?
korzystam z strcmp
Tagi: zmienne
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: