// 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; } }
// 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>(); }
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 ); }