Paqoo Opublikowano 8 Listopada 2008 Udostępnij Opublikowano 8 Listopada 2008 Mam taki problem. Muszę manipulować zmienną global.darkness żeby wywołać określony alpha. Jak zapisać ten kod? Chodzi oczywiście o podanie jakiegoś systemu liczenia alpha na podstawie innej zmiennej. Napisałem coś takiego w step: GML if ciemnosci > 10 then global.darkness=0.1 if ciemnosci > 15 then global.darkness=0.2 if ciemnosci > 20 then global.darkness=0.3 if ciemnosci > 25 then global.darkness=0.4 if ciemnosci > 30 then global.darkness=0.5 if ciemnosci > 35 then global.darkness=0.6 if ciemnosci > 40 then global.darkness=0.7 if ciemnosci > 45 then global.darkness=0.8 if ciemnosci > 50 then global.darkness=0.9 if ciemnosci > 55 then global.darkness=1 I kombinuję alarmami, ale coś nie wychodzi: GML if global.darkness!=1 then ciemnosci+=1 else if global.darkness<=1 ciemnosci-=1 Kto zna jakiś inny sposób albo poprawi ten kod? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Harv Opublikowano 8 Listopada 2008 Udostępnij Opublikowano 8 Listopada 2008 GML if global.darkness!=1 then ciemnosci+=1 else if global.darkness<=1 ciemnosci-=1 wat Ten warunek jest źle skonstruowany, całkowicie. Jeżeli global.darkness nie jest 1 to ciemnosci + 1 a jezeli nie to jezeli global.darkness jest mniejsze lub równe 1 wtedy ciemnosci - 1 :/ więc jest ciągle +1 -1 +1 -1 +1 -1 itd. Dodaj jakiś ogranicznik, skoro robisz rpg to powinieneś sobie już poradzić. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 8 Listopada 2008 Autor Udostępnij Opublikowano 8 Listopada 2008 Przyznam, że jestem trochę leniwy. Nie lubię myśleć nad takimi rzeczami 2 godziny :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Harv Opublikowano 8 Listopada 2008 Udostępnij Opublikowano 8 Listopada 2008 Zrób zmienną darkm i ustaw w create na false. I step: GML if darkness == 0 then darkm = false; if darkness == 1 then darkm = true; I zmień: GML if global.darkness!=1 then ciemnosci+=1 else if global.darkness<=1 ciemnosci-=1 Na: GML if global.darkness!=1 and darkm == false then ciemnosci+=1 else if global.darkness <=1 and darkm ==true ciemnosci-=1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 8 Listopada 2008 Autor Udostępnij Opublikowano 8 Listopada 2008 Dobrze wszystko działa jak należy. Dzięki za pomoc. Zamykam temat. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Yoda Opublikowano 8 Listopada 2008 Udostępnij Opublikowano 8 Listopada 2008 Pozwolę sobie coś dodać if ciemnosci > 10 then global.darkness=0.1 if ciemnosci > 15 then global.darkness=0.2 if ciemnosci > 20 then global.darkness=0.3 if ciemnosci > 25 then global.darkness=0.4 if ciemnosci > 30 then global.darkness=0.5 if ciemnosci > 35 then global.darkness=0.6 if ciemnosci > 40 then global.darkness=0.7 if ciemnosci > 45 then global.darkness=0.8 if ciemnosci > 50 then global.darkness=0.9 if ciemnosci > 55 then global.darkness=1 po co tak? Nie prościej żeby zmienna ciemności była z przedziału 1 - 100 i dac tylko GML global.darkness = ciemnosci * 0.01 ;p Jak dla mnie o wiele prościej. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi