0
저는 적을 특정 범위에두고 플레이어 앞에서 플레이어가 적을 공격 할 수있는 게임을 만들고 있습니다. 반경 거리를 계산하여 플레이어가 어떤 방향으로 향하고 있는지에 따라 앞으로 향하게 만들었지 만 각도를 만들어 플레이어의 원뿔 모양처럼 만들 수는 있습니다. 나는 이미지가있다. 얇은 초록색 선은 반경입니다. 그러나 어떻게 붉은 원뿔을 계산할 수 있습니까? 여기 어떻게 각도를 계산할 수 있습니까?
이 내가 지금까지 무슨 짓을 더 잘 이해http://tinypic.com/view.php?pic=28v63h0&s=6
의 이미지입니다
당신은 접선의 정의를 사용할 수 있습니다
{
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import flash.ui.Keyboard;
public class Player extends MovieClip
{
var radius:Number = 60;
public function Player()
{
addEventListener(Event.ENTER_FRAME, Update);
}
function Update(event:Event)
{
var radiusx:Number = x+radius*Math.cos(rotation/180*Math.PI);
var radiusy:Number = y+radius*Math.sin(rotation/180*Math.PI);
// Rotate to mouse;
var dx = parent.mouseX - x;
var dy = parent.mouseY - y;
var angle = Math.atan2(dy,dx)/Math.PI * 180;
rotation = angle;
}
}
}
@ sashkello 답장을 보내 주셔서 감사합니다.하지만 코딩에 맞지 않는 것 같습니다. 내 게임에 맞게 코드에서 어떻게 할 수 있는지 보여 주시겠습니까? – user218130
나는 당신이 실제로 무엇을 성취하려고하는지 전혀 모른다. 귀하의 질문에 대한 각도를 계산하고 이것이 당신이 그것을 할 수있는 방법입니다. 죄송합니다, 더 이상 도움이 될 수는 없습니다. – sashkello
@ Sashkello : 지금은 정확히 내가 무엇을 찾고 있는지 알고 있습니다. 나는 플레이어의 시야를 찾고 있었지만 시력의 선을 기반으로하는 많은 튜토리얼을 보았으므로 어쨌든 그들을 체크 아웃 할 필요가있다. – user218130