Challenge!!! Zadanie polega na samodzielnym wykonaniu appki od zera. Należy ustawić, aby cpu wybierał Kamień, Papier lub Nożyce, potem aby wylosowało losowo - czy mamy wygrać czy przegrać i w odniesieniu do dwóch powyższych wybrać odpowiedź na dwa wybory cpu. Jeśli odpowiemy dobrze - zdobywamy +1 punkt, remis = 0, przegrana -1. Po 10-ciu pytaniach alert i przycisk do restartu.
Robiłem to kilka godzin, najpierw chciałem zrobić sam jak najwięcej całkowicie z głowy. Udało się do momentu, gdy trzeba było zrobić funkcję odpowiedzialną za wybór i zaliczanie punktów. Stanąłem i nie dałem rady. Pomogłem sobie podobnym rozwiązaniem z githuba. Efekt końcowy jest taki, że po około 4-5 godzinach udało mi się zrobić wszystko do takiego momentu, że wszystko działa, ale nie wygląda jakoś spektakularnie. Design to już tylko kosmetyka, ale nie dam rady dziś tego skończyć. Pobawię się jutro.
@hebato : W choiceTapped widzę, że nie masz ogarniętej obsługi remisu. I w ogóle default powinien być dla lepszej czytelności w nowej linijce. Z tego co widzę po logice, to w wypadku remisu jest też przegrana, bo won jest na false. Możesz sobie na górze zrobić
let won: Bool I później zamiast if i else przykładowo w pierwszym
if (number == currentChoice) { score += 0 wiem, widziałem inne rozwiązania tej appki na githubie robione na enumach i rzeczywiście to wygląda lepiej, ale to jest tak jakby wyprzedzenie materiału, bo poprzednie dwie lekcje(projekty) gdzie robiłem coś podobnego były bardziej robione na tej zasadzie, więc nie chciałem się wychylać
@hebato: to w sumie logiczniej remis by było sprawdzać na samym początku. Wtedy program nie przechodzi bezsensownie przez całą logikę sprawdzenia czy dany gracz wygrał czy przegrał
Cały kod w .jpeg. (nie wiem czy taka forma jest wygodna?) Mam wszystkie projekty na dysku, może później, bliżej końca wrzucę je gdzieś np. na githuba, żeby ktoś skorzystał w razie potrzeby.
@Prism2772: tak mi było najłatwiej to zrobić. chyba nie mam jeszcze w sobie takiego myślenia nt. pracy kodu, tzn jak to zrobić żeby było wydajniejsze. w ogóle o tym nie myślę przy pisaniu... :( póki co ważne żeby działało. dzięki za wskazówki
@hebato: Dlatego też jakiś czas temu Ci pisałem, że warto wrzucić kod, bo wtedy właśnie takie rzeczy można wychwycić i Ci podpowiedzieć, na co fajnie zwrócić uwagę. Jeśli chodzi o formę wrzucania kodu, najbardziej polecam https://pastebin.com Wtedy łatwiej by było ten kod lekko zmienić, bez przepisywania. Zwracaj też uwagi na entery, w odpowiednich miejscach. Tak jak wcześniej miałeś default switcha za wysoko, tak teraz brakuje entera w 73 linijce. Jak
Dzień 25/100 kursu 100 days of SwiftUI
Challenge!!! Zadanie polega na samodzielnym wykonaniu appki od zera. Należy ustawić, aby cpu wybierał Kamień, Papier lub Nożyce, potem aby wylosowało losowo - czy mamy wygrać czy przegrać i w odniesieniu do dwóch powyższych wybrać odpowiedź na dwa wybory cpu. Jeśli odpowiemy dobrze - zdobywamy +1 punkt, remis = 0, przegrana -1. Po 10-ciu pytaniach alert i przycisk do restartu.
Robiłem to kilka godzin, najpierw chciałem zrobić sam jak najwięcej całkowicie z głowy. Udało się do momentu, gdy trzeba było zrobić funkcję odpowiedzialną za wybór i zaliczanie punktów. Stanąłem i nie dałem rady. Pomogłem sobie podobnym rozwiązaniem z githuba. Efekt końcowy jest taki, że po około 4-5 godzinach udało mi się zrobić wszystko do takiego momentu, że wszystko działa, ale nie wygląda jakoś spektakularnie. Design to już tylko kosmetyka, ale nie dam rady dziś tego skończyć. Pobawię się jutro.
#naukaprogramowania #ios #swift
Po dziesięć-ciu pytaniach
Z tego co widzę po logice, to w wypadku remisu jest też przegrana, bo won jest na false.
Możesz sobie na górze zrobić
let won: Bool
I później zamiast if i else przykładowo w pierwszym
if (number == currentChoice) {
score += 0
wiem, widziałem inne rozwiązania tej appki na githubie robione na enumach i rzeczywiście to wygląda lepiej, ale to jest tak jakby wyprzedzenie materiału, bo poprzednie dwie lekcje(projekty) gdzie robiłem coś podobnego były bardziej robione na tej zasadzie, więc nie chciałem się wychylać
dzięki za wskazówki
Wtedy łatwiej by było ten kod lekko zmienić, bez przepisywania.
Zwracaj też uwagi na entery, w odpowiednich miejscach. Tak jak wcześniej miałeś default switcha za wysoko, tak teraz brakuje entera w 73 linijce.
Jak