Jak sprawić, by obiekt przesunął się w miejsce dotyku
Robi się coraz ciekawiej. Tym razem zajmiemy się tym, by obiekt przemiścił się w miejsce gdzie klikniemy.
By nie komplikować sprawy posłużę się poprzednio utworzonym już kodem i go jedynie nieco zmodyfikuję. Mamy zatem wyświetlony obiekt - piłkę plażową klikając bądź też dotykając ją wywoływaliśmy akcję ściśle określoną w funkcji.
local pilka_plazowa = display.newImage("pilka_plazowa.png")
function odczyt(event)
if event.phase=="began" then
pilka_plazowa.x=event.x
pilka_plazowa.y=event.y
end
end
Runtime:addEventListener("touch", odczyt)
Zmiany jakie tu wykonałem w porównaniu do uprzedniego kodu to:
- w funkcji odczyt zamiast powodować, ze piłka zniknie ustawiłem współrzędne w której się obecnie piłka znajduje na współrzędne punktu który został dotknięty czyli pilka_plazowa.x=event.x i analogicznie dla osi y.
- Drugą zmianą jaką trzeba było wykonać to zmienić pilka_plazowa:addEventListener na Runtime:addEventListener dlatego, że chcemy wywołać zdarzenie nie wtedy, gdy klikniemy na piłce lecz w dowolnym punkcie ekranu
Piłka pod wpływem dotyku przemieściła się w dół. Każde kliknięcie/dotknięcie zmienia położenie piłki. |
Czytaj dalej: Obsługa dotyku w smartfonach
Warning: include_once(includes/rss_fetch.php) [function.include-once]: failed to open stream: No such file or directory in /home/ekoinst/domains/pcwiedza.pl/public_html/tworzenie-gier/includes/funkcje.php on line 548
Warning: include_once() [function.include]: Failed opening 'includes/rss_fetch.php' for inclusion (include_path='.:/opt/alt/php52/usr/share/pear:/opt/alt/php52/usr/share/php') in /home/ekoinst/domains/pcwiedza.pl/public_html/tworzenie-gier/includes/funkcje.php on line 548