首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正确地进行坦克瞄准

正确地进行坦克瞄准
EN

Stack Overflow用户
提问于 2020-08-04 07:03:28
回答 1查看 38关注 0票数 0

嗨,我正在试着让我的坦克着火,但它似乎不起作用。我的坦克枪有一个射点,可以用来发射物体。FirePoint是从其实例化激光束的点。但当我转动我的炮塔时,它的尖端就消失了。这一点是炮塔的一个孩子。我该怎么办?如果我的解释还不够充分,请提问,我会尽力帮助你。

这是我的播放器控制器脚本。

代码语言:javascript
复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
public float Speed = 0;
public float MaxSpeed;
public float TurnSpeed;
public float AccelRate = 1;
public float BrakeSpeed = 1;
public GameObject LaserBeam;
public GameObject FirePoint;
public Vector3 Offset;
// Start is called before the first frame update
void Start()
{
    
}

// Update is called once per frame
void Update()
{
    // Increase forward when up arrow pressed
    if (Input.GetKey(KeyCode.UpArrow))
    {
        Speed = Speed + AccelRate;
    }
    // Move backward when down arrow pressed
    if (Input.GetKey(KeyCode.DownArrow))
    {
        Speed = Speed - AccelRate;
    }
    // Turn when left arrow pressed
    if (Input.GetKey(KeyCode.LeftArrow))
    {
        transform.Rotate(Vector3.down * Time.deltaTime * TurnSpeed);
    }
    // Turn when right arrow pressed
    if (Input.GetKey(KeyCode.RightArrow))
    {
        transform.Rotate(Vector3.up * Time.deltaTime * TurnSpeed);
    }
    // Reset vehicle rotation
    if (Input.GetKey(KeyCode.Return))
    {
        transform.eulerAngles = new Vector3(0, 0, 0);
    }
    // Press the brakes
    if (Input.GetKey(KeyCode.Space) && (Speed > 0 || Speed < 0))
    {
        Speed = Speed - BrakeSpeed;
        if (Speed < 0) { Speed = 0; }
    }
    //Ensure vehicle does not pass the maxspeed
    if (Speed > MaxSpeed)
    {
        Speed = MaxSpeed;
    }
    //Move vehicle
    transform.Translate(Vector3.right * Time.deltaTime * Speed);
    if (Input.GetKey(KeyCode.UpArrow) == false && Speed > 0)
    {
        Speed = Speed - AccelRate;
    }
    //Fire
    if (Input.GetKeyDown(KeyCode.F))
    {
        Instantiate(LaserBeam, FirePoint.transform.position + Offset, FirePoint.transform.rotation);
    }
}

}

EN

回答 1

Stack Overflow用户

发布于 2020-08-04 12:19:46

我修好了!我只需将偏移量设置为0,0,0,它就起作用了。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63238065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档