1.程序包含兩個(gè)角色:小球Ball、發(fā)射按鈕Fire。
小球在舞臺(tái)上的起始位置是(-180,-140)。
2.通過設(shè)置變量speed和變量angle的值來調(diào)整小球的發(fā)射速度和角度,然后單擊Fire按鈕發(fā)射小球。
當(dāng)用戶單擊Fire按鈕時(shí),它會(huì)廣播一條消息,小球接收消息后發(fā)射出去。
3.小球在發(fā)射前,圖1需要移動(dòng)到起始位置(-180,-140),然后設(shè)置落筆狀態(tài),并清除之前的筆跡。計(jì)算初始速度Vx,Vy。
4.小球發(fā)射后,每0.02秒計(jì)算并更新一次小球的位置。
首先計(jì)算垂直距離dy,如果為負(fù)值,說明小球已經(jīng)到達(dá)地面,程序結(jié)束(圖2)。
5.計(jì)算水平距離dx,腳本需要把小球的實(shí)際飛行距離轉(zhuǎn)換成在舞臺(tái)上的坐標(biāo)位置,也就是把(dx,dy)轉(zhuǎn)換成(xPos,yPos)。
舞臺(tái)中模擬器的垂直長(zhǎng)度為320(從-140到180),對(duì)應(yīng)實(shí)際長(zhǎng)度的100米,從(0到100)。
舞臺(tái)中模擬器的水平長(zhǎng)度為420(從-180到240),對(duì)應(yīng)實(shí)際長(zhǎng)度的100米,從(0到100)。
因此小球在舞臺(tái)上飛行的垂直距離為320*dy/100步,水平距離為420*dx/100步,這兩個(gè)數(shù)值分別加上小球的起始坐標(biāo),就是小球的實(shí)時(shí)位置(圖3)。