コード例 #1
0
    // Start is called before the first frame update
    void Start()
    {
        BlockComponent        = GetComponent <DataBlockComponent>();
        Rotation              = BlockComponent.DataBlock.Rotation;
        transform.eulerAngles = new Vector3();
        TileScript            = GetComponent <TileMovingObjectScript>();
        TileScript.JumpToTile(BlockComponent.WorldTileX, BlockComponent.WorldTileY);
        if (BaseMotionSpeed == default)
        {
            if (BlockComponent.DataBlock.GetParameterByName <float>("MotionSpeed", out var param))
            {
                BaseMotionSpeed = param.Value;
            }
            else
            {
                BaseMotionSpeed = 5;
            }
        }
        ChasingSpeed = BaseMotionSpeed * 2;
        if (BlockComponent.DataBlock.GetParameterByName <float>("Enemy_ChaseSpeed", out var data))
        {
            ChasingSpeed = data.Value;
        }
        TileScript.MotionSpeed = BaseMotionSpeed;
        TileScript.CanMoveOverWorldReservedTiles = false;
        Rotator = GetComponentInChildren <AngleRotator>();
        var loopSource = GetComponent <SoundLoader>().LoopStart("sb-bullyx", out _, true); // walking sound looped

        if (loopSource != null)
        {
            loopSource.volume = .25f;
        }
    }
コード例 #2
0
ファイル: Player.cs プロジェクト: JDrocks450/KrabbyQuestEmu
 // Start is called before the first frame update
 void Start()
 {
     GameCam   = GameObject.Find("Camera").GetComponent <Camera>();
     Transform = transform;
     TileMovingObjectScript.MoveableMoving += TileMovingObjectScript_MoveableMoving;
     rotator = GetComponentInChildren <AngleRotator>();
 }
コード例 #3
0
    void OnSceneGUI()
    {
        AngleRotator angleRotator = (AngleRotator)target;
        Transform    transform    = angleRotator.transform;

        float rangeSize = 1f;

        // if this rotator is attached to a motion sensor, show the range of the motion sensor instead of the default 1.0
        MotionSensor motionSensor = angleRotator.GetComponent <MotionSensor>();

        if (motionSensor != null)
        {
            rangeSize = motionSensor.GetMaxDistance;
        }

        // use arcs and lines to draw the angle range
        Handles.color = angleRotator.GetReverseInitialDirection ? Color.black : Color.white;
        DrawArcRange(transform, angleRotator.GetAngleRange, rangeSize);
        Handles.color = angleRotator.GetReverseInitialDirection ? Color.white : Color.black;
        DrawArcRange(transform, -angleRotator.GetAngleRange, rangeSize);

        // draw starting angle
        Handles.color = Color.blue;
        Handles.DrawLine(
            transform.position,
            transform.position + Quaternion.AngleAxis(angleRotator.GetInitialAngle, transform.up) * transform.forward * rangeSize
            );
    }