2014-02-28 48 views
0

我正在做一個簡單的籃球比賽,這是我到目前爲止http://amazonproducts.netai.net/game/bball.html。問題是輪輞,我所做的是我在輪圈末端添加了4個小電影剪輯(最左邊),這是代碼我用他們:如何在Flash中製作籃球籃圈?

if (ball.hitTest(rimleft)) { 
xspeed= Math.abs(xspeed) * -1; 
} 
if (ball.hitTest(rimright)) { 
xspeed= Math.abs(xspeed); 

} 
if (ball.hitTest(rimtop)) { 
yspeed*=-1; 
} 
if (ball.hitTest(rimbot)) { 
yspeed*=-1; 
} 

正如你可以看到它不工作好,有時球正好穿過鐵環,有時卡住或它反彈怪異。請給我一個更好的主意如何解決這個問題...

回答

0

對不起盧卡,我無法訪問您的鏈接,因爲該網站被學校網絡保護計劃封鎖。不過,也許我仍然可以指出你正確的方向。嘗試沿着這條線的東西(的rim有實例名稱rim忘記現在的左,右輪輞的事情。):

var difficulty:int=10; 
var depth_matches:Boolean=false; 
if(ball.hitTestObject(rim)&&depth_matches){ 
    if(ball.x>rim.x-(rim.width/2)+difficulty && ball.x<rim.x+(rim.width/2)-difficulty){ 
     ball.x=rim.x; 
    your_score++; 
    } 
} 

布爾depth_matches描述球是否是在同一深度爲您的RIM(我假設遊戲並不涉及將球扔進籃筐,而是將其扔出)。由於我沒有看你的代碼,我看不到你用這個遊戲的方法,你必須適應你的情況。它也似乎是你使用AS2,所以你必須將hitTestObject更改爲hitTest

+0

謝謝你,但我確實有點工作,我需要的是球從籃筐的左側反彈。這讓我感到困擾,你可以看到球有時卡住或只是通過籃筐。我在海誓山盟旁邊添加了4個電影剪輯來反彈球,但它運行不好:\ \ – Luka