ああ神様、またお邪魔してすみません。最初の投稿で説明したように、AS3 のコーディングを開始するのがこれほど難しいとは想像もしていませんでした (最初は簡単でしたが、今は心がブロックされています) 。ボールに方向を与えようとする三角法、ボールが蹴られたらボールをマウスの位置に移動させたい、つまり、カーソルが置かれている場所にボールを希望の速度と角度で投げる、私はジェットを取りました例ですが、おそらく私はそれを正しく実装していません。コードは次のとおりです。
import flash.geom.Point;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.MovieClip;
// here I added a custom cursor to my mouse (it’s an aim in png format)
var cursor:MovieClip;
function initializeGame():void
{
cursor = new Cursor();
addChild(cursor);
cursor.enabled = false;
Mouse.hide();
stage.addEventListener(MouseEvent.MOUSE_MOVE, dragCursor);
}
function dragCursor(event:MouseEvent):void
{
cursor.x = this.mouseX;
cursor.y = this.mouseY;
}
initializeGame();
var mouse=this.Mouse;
// here I want to make the player (called kicker) to kick the ball
stage.addEventListener(MouseEvent.CLICK, kick);
function kick(evt:Event){
kicker_mc.play(); // here I animate the kicker movieClip
this.addEventListener(Event.ADDED, moveBall);// this is the function that will move the ball towards the goal
}
//And here unsuccessfully trying to make the ball start moving to the cursor position, (currently when I kick the ball it appears at the right upper corner of the swf, exactly where the cursor appears when movie is tested
var speed:Number;
var angle:Number;
speed=200;
angle = Math.atan2(mouse.y-bola.y, mouse.x-bola.x);
function moveBall (event:Event){
ball.x += Math.cos (angle) * speed;
ball.y += Math.sin (angle) * speed;
}
誰かがボールを動かす手を貸してくれたら、私はいつも借金を抱えています。後で物理学から始めますが、今は私の心は疲れ果てています