W trzeciej cz??ci zajmiemy si? rodzajami zmiennych,komentarzami oraz wszystkimi operatorami tj. arytmetyczne,matematyczne,relacji oraz logiczne. Poruszymy te? kwesti? instrukcji warunkowych dla przypomnienia.
Operatory
•Logiczne:
Operator?w logicznych mamy trzy i s? to and,or,not.
AND
Operator logiczny "and" co z angielskiego oznacza "oraz"/"i" czyli je?li spe?ni? si? dwa warunki wtedy nasz kod przejdzie dalej. Np je?li po wpisaniu komendy 'zniszcz' gracz siedzi w poje?dzie i id tego pojazdu to 611 (nie wiem co to ) to wtedy nasz pojazd zniszczy to zamiast robi? zb?dnie dwa warunki mo?emy u?y? operatora.
Zamiast
tak, to robimy tak:
end jest jeden od if'a ?aden z operator?w nie potrzebuje dodatkowego end'a.
Jednymi s?owy
jesli warunek1 i warunek2 sie spe?niaj? to kod leci dalej.
OR
Operator logiczny "or" co z angielskiego oznacza "lub"/"albo" czyli je?li spe?nia si? warunek pierwszy LUB spe?nia si? warunek drugi wtedy nasz kod przechodzi dalej. Np je?li chcemy zrobi? tak, ?e skin o id 180 mo?emy ubra? tylko wtedy gdy mamy skin 185 lub 190 to nie u?yjemy operatora "and", poniewa? nie mo?emy mie? dw?ch skin?w na raz i nasz warunek nigdy si? nie spe?ni. U?yjemy operatora "or". Czyli:
Operator "or" r?wnie? nie potrzebuje dodatkowego end'a. Reasumuj?c
Je?li warunek1 si? spe?nia lub warunek2 si? spe?nia to kod leci dalej.
NOT
Operator "not" co z angielskiego oznacza "nie" czyli je?li co? si? nie spe?nia wtedy nasz kod przechodzi dalej. Np gdy wpiszemy komend? "ulecz" i nie siedzimy w poje?dzie wtedy nas uleczy to zrobimy to tak:
Operator "not" tak?e nie potrzebuje dodatkowego end'a. Jednymi s?owy
Je?li nasz warunek1 si? nie spe?ni wtedy nasz kod leci dalej.
Ciekawostki
• Ciekawosta nr 1
Ciekawostk? jest to, ?e w/w operator?w mo?emy u?ywa? tyle ile chcemy, przyk?adowo
i tak do woli. Z operatorami "or" oraz "not" te? mo?emy tak post?powa?.
Oraz z "not"
• Ciekawosta nr 2
Drug? wa?n? informacj?/ciekawostk? jest to i? operatory mo?emy ??czy? a czasem nawet musimy. ??czy? w kontek?cie u?ycia ich w jednym warunku, czyli:
Czyli je?li mamy skin o id 280 i mamy pojazd oraz id pojazdu to 526 lub 527 i nie mamy elementdaty "data1" wtedy nasz kod leci dalej.
• Ciekawosta nr 3
R?wnie? wa?n? informacj? jest to i? operatora "or" mo?emy u?y? r?wnie? poza instrukcj? warunkow?
W takim wypadku je?li gracz nie posiada elementdaty "data" czyli jej nie ma lub jej warto?? to fa?sz (false) to wtedy zmienna data b?dzie zawiera? warto?? "Brak". Stanie si? tak jedynie je?li gracz nie b?dzie posiada? elementdaty.
• Ciekawosta nr 4
Kolejn? ciekawostk? jest to i? operatora "not" r?wnie? mo?emy u?y? poza instrukcj? warunkow?. Przyk?adowo zamiast
Mo?emy zrobi? tak
Czyli nasza zmienna jest r?wna "not true" co oznacza "nie prawda" czyli "fa?sz" tak wi?c nasza zmienna b?dzie r?wna false, czyli to na jedno wychodzi.
• Ciekawosta nr 5
I ostatni? ciekawostk? z operator?w jest fakt, ?e operatora "and" tak?e mo?emy u?y? poza instrukcj? warunkow?. Przyk?adowo
Taki kod poka?e nam na "czacie" 4 a operator "and" zadzia?a tak, ?e zwr?ci wynik - 1 mniejszy od 1 i 1 lub wynik-1.
•Matematyczne:
Operator?w matematycznych mamy kilka.
Dodatni (+)
Operator dodatni to zwyk?y znak + czyli dodawanie warto?ci. Przyk?adowo
Wypisze nam na "czacie" 8 i operatorem tutaj jest znak dodawania. Drugi przyk?ad:
Czyli mo?emy dodawa? warto?ci liczbowe z elementdat do siebie. Mo?emy te? je odejmowa?,mno?y?,dzieli?,pot?gowa?.
Ujemny (-)
Operator ujemny to nic innego jak zwyk?y znak '-' czyli odejmowanie warto?ci. Przyk?adowo
Wypisze nam na "czacie" 4 i operatorem tutaj jest znak odejmowania.
Mno??cy (*)
Operator mno??cy to nic innego jak zwyk?e mno?enie czyli znak * Czyli mno?enie warto?ci. Przyk?adowo
Wypisze nam na "czacie" 8 i operatorem tutaj jest znak mno?enia.
Dziel?cy (/)
Operator dziel?cy to po prostu zwyk?e dzielenie czyli znak / Czyli dzielenie warto?ci. Przyk?adowo
Wypisze nam na "czacie" 2 i operatorem tutaj jest znak dzielenia. Znak dzielenia to slash lub jak nie kt?rzy to nazywaj? "uko?nik" w praw? stron?. Poniewa? \ a / to dwa r??ne znaki a \ nie jest ?adnym z operator?w tak wi?c nie zadzia?a on jak dzielenie tylko spowoduje b??d.
Pot?guj?cy (^)
Operator pot?guj?cy to pot?gowanie czyli znak ^ Czyli pot?guje warto?ci, podnosi je do pot?gi. Przyk?adowo
Wypisze nam na "czacie" 16 czyli 4*4 i operatorem tutaj jest znak pot?gowania.
•Arytmetyczne:
Operator?w arytmetycznych r?wnie? jest kilka.
R?wno?ci
Operator r?wno?ci to znak == sprawdzaj?cy czy warto?ci s? do siebie r?wne. Przyk?adowo
taki warunek przepu?ci nasz kod dalej, poniewa? 4 + 2 = 6. Operator r?wno?ci nie dzia?a tylko na liczbach, dzia?a r?wnie? na stringach oraz boolean. Przyk?adowo
taki warunek nam si? nie spe?ni, poniewa? d to "hello" a d2 to "world". Mo?na te? u?y? tego w taki spos?b
taki zapis sprawdzi czy d to "hello" i czy d2 to "world".
Negacji R?wno?ci
Operator negacji r?wno?ci to znak ~= sprawdzaj?cy czy warto?ci nie s? sobie r?wne. Przyk?adowo
taki przyk?ad poka?e nam na "czacie" ,"tak", poniewa? 4 - 1 nie jest r?wne 2, tylko 3. Tak samo mo?na zrobi? ze stringiem czy te? boolean. Przyk?ad boolean czyli true/false
taki kod sprawdzi czy z jest r?wne true. Zamiast takiego zapisu mo?na po prostu omin?? operator i zrobi?
ze stringiem to
Nier?wno?ci Ostre
• Mniejszy
Operator "mniejszy" z nier?wno?ci ostrych to po prostu znak < sprawdzaj?cy czy warto?? jest mniejsza od drugiej. Przyk?adowo
taki warunek nam si? nie spe?ni, poniewa? 6-2 to 4 a 4 nie jest mniejsze od 3.
• Wi?kszy
Operator "wi?kszy" z nier?wno?ci ostrych to po prostu znak > sprawdzaj?cy czy warto?? jest wi?ksza od drugiej. Przyk?adowo
taki warunek nam si? spe?ni, poniewa? 7-3 to 4 a 4 jest wi?ksze od 1.
Nier?wno?ci Nieostre
• Mniejszy Lub R?wny
Operator "mniejszy lub r?wny" z nier?wno?ci nieostrych to znak <= sprawdzaj?cy czy warto?? jest mniejsza od drugiej lub jej r?wna. Przyk?adowo
taki warunek nam si? spe?ni, poniewa? 7-1 to 6 a znak <= sprawdzi czy 7-1 jest mniejsze od 6 lub r?wne 6 tak wi?c warunek si? spe?ni.
• Wi?kszy Lub R?wny
Operator "wi?kszy lub r?wny" z nier?wno?ci nieostrych to znak >= sprawdzaj?cy czy warto?? jest wi?ksza od drugiej lub jej r?wna. Przyk?adowo
taki warunek r?wnie? si? spe?ni, poniewa? 7-1 to 6 a znak >= sprawdza czy 7-1 jest wi?ksze lub r?wne 6, co prawda nie jest wi?ksze ale jest r?wne 6 tak wi?c nasz warunek si? spe?ni.
Przynale?no?ci
Operator przynale?no?ci to znak/s?owo/wyraz/sformu?owanie "in" czyli z angielskiego "w" przyk?ad:
operatorem przynale?no?ci jest 'in' czyli sprawdza on czy przynale?ne warto?ci np z tabeli/tablicy.
Modulo (%)
Operator modulo to znak %, modulo to reszta z dzielenia. Mo?emy sprawdzi? czy liczba jest parzysta. Przyk?adowo
taki warunek si? spe?ni poniewa? reszta z dzielenia 8.5 przez 2 to w?a?nie po?owa czyli 0.5
•Relacji:
Relacji
Operator relacji dzia?a tak jak arytmetyczny, przyk?adowo
warunek si? nie spe?ni bo 2 nie jest wi?ksze od 3. Operatory relacji to tak na prawd? to samo co operatory arytmetyczne tyle, ?e z wyj?tkiem modulo, w operatorach relacji nie ma modulo.
Rodzaje Zmiennych
Rodzaj zmiennej to nie to samo co typ zmiennej czyli globalna lub lokalna.
String
String to rodzaj zmiennej, string to ci?g znak?w umieszczony w cudzys?owach " " lub apostrofach ' ' - zazwyczaj jest to cudzys??w. String wygl?da nast?puj?co
W stringu mo?emy u?ywa? polskich znak?w ?,? itd. Aby przej?? lini? ni?ej w stringu wykorzystujemy zapis
znak \n spowoduje przej?cie do nast?pnej linii. Je?li chcemy umie?ci? jaki? cudzys??w w stringu to niestety jest to nie mo?liwe, natomiast mo?liwe jest zastosowanie apostrof?w
takie co? nie zadzia?a,
natomiast taki zapis jak najbardziej zadzia?a. String mo?emy zapisa? te? w taki spos?b
w takim przypadku je?li chcemy zej?? linijk? ni?ej to nie u?yjemy ju? \n tylko po prostu entera
Istnieje co? takiego jak funkcja tostring w lua. Mo?na o niej poczyta? w dokumentacji Funkcja tostring
Number
Number to rodzaj zmiennej, number to zmienna liczbowa. Przyk?ad:
Istnieje r?wnie? co? takiego jak funkcja tonumber w lua, r?wnie? odsy?am do dokumentacji.
Funkcja tonumber
Boolean
Boolean to rodzaj zmiennej, boolean to zmienna logiczna czyli prawda lub fa?sz true/false Przyk?ad
mo?emy te? zrobi? false. True czy "prawda"/"tak", false czy "fa?sz"/"nie"
Array/Table
Array lub jak kto woli table to rodzaj zmiennej, a konkretnie tabela, przyk?ad
zmienna 'array' jest tabel? po takiej deklaracji.
Nil
Nil to tak?e rodzaj zmiennej a konkretnie 'pustej' zmiennej czyli nic nie zawieraj?cej, nil to z angielskiego "zero"/"nic".
Function
Function to tak?e rodzaj zmiennej, czyli za pomoc? zmiennej deklarujemy funkcj?.
wtedy mo?emy do takiej zmiennej si? odwo?a? za w taki spos?b
If z angielskiego "gdy"/"je?li", przyk?adowy warunek sprawdzaj?cy czy mamy skin o id 200 to
ka?y warunek if ko?czymy s?owem "then" czyli z angielskiego "potem"/"wtedy" ka?y if potrzebuje swojego end'a.
Else
Else czyli z angielskiego "lub" dzia?a przeciwnie do if'a czyli je?li warunek sprawdza czy mamy skin 200 to else b?dzie przeciwie?stwem wi?c co ma si? sta? je?li go nie mamy.
wyra?enie "else" nie potrzebuje dodatkowego end'a.
Elseif
Elseif czyli z angielskiego "lub je?li" dzia?a przeciwnie do g??wnego if'a. Mo?emy sprawdzi? np czy gracz ma skin 200 je?li tak wtedy da nam 100 hp, je?li ma skina 100 da nam 50 hp. a je?li nie ma ?adnego z nich da nam 20 hp.
elseif tak?e nie potrzebuje dodatkowego end'a. Warunk?w elseif mo?emy da? ile chcemy do danego warunku, ja tylko pokaza?em jedno ale mo?e by? np 5,10,50 itd, natomiast else zawsze jest tylko jedno. Tyczy si? ono g??wnego warunku i wszystkich tak jakby 'podwarunk?w' czyli elseif. To tak jak drzewo, if to korze? drzewa, elseif to ga??zie a else to pie?. g??wny korze? jest tylko jeden, ga??zi jest mn?stwo, pie? jest tylko jeden.
Komentarze
Wyr??niamy dwa rodzaje komentarzy, blokowe/wielo liniowy i liniowe/jedno liniowe.
Liniowe
Komentarz liniowy czyli na jedn? linie, komentarz liniowy zaczynamy znakiem -- czyli dwa minusy. Przyk?ad
komentarzy mo?emy da? ile chcemy.
Blokowe
Komentarz blokowy czy jak kto woli wielo liniowy to komentarz na kilka linii, komentarz taki ma sw?j koniec i pocz?tek. Komentarz blokowy zaczynamy --[[ takim znakiem, czyli dwa minusy i dwa nawiasy kwadratowe, natomiast zamykamy/ko?czymy go tak --]] lub ]] czyli dwa minusy i dwa nawiasy kwadratowe lub same dwa nawiasy kwadratowe.
w komentarzu r?wnie? mo?emy pisa? polskie znaki. Wszystko co jest w komentarzu jest przez kod ignorowane, mo?emy w nim umie?ci? funkcj? i ona zostanie pomini?ta.
Brawo Marcin, w ko?cu si? postara?e?, bardzo przejrzysty i dobrze zbudowany poradnik. Tylko te ciekawostki to bardziej wiedza przydatna ni? takie ciekawostki. BBCode bardzo fajnie zrobiony. Wszystko po kolei, fajnie t?umaczone. Nie ma si? do czego przyczepi?. Powodzenia w dalszym tworzeniu poraadnik?w.
To dlaczego Ty si? nie podzieli?e? takowymi informacjami ? Znajd? takie informacje po Polsku dla os?b kt?re z Angielskim maj? problemy, to zwr?c? honor
Jak osoby maj? problemy z angielskim to mo?e nie powinny bra? si? za skryptowanie/programowanie?
Jednak lepiej czyta? informacje napisane w oryginale, a nie t?umaczone, bo jak wida? po wielu poradnikach w tym dziale to troch? wprowadzaj? w b??d i nie wyja?niaj? do ko?ca dzia?ania ni? jakby si? czyta?o orygina? w j?zyku angielskim.
Operator logiczny "and" co z angielskiego oznacza "oraz"/"i"
Takich informacji to w podstaw?wce ucz?. Wi?c po co si? z tym dzieli??
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