private IEnumerator Kasplode(float jumpDelay, float delay, Follower f) { yield return(new WaitForSeconds(jumpDelay)); f.GetComponent <Rigidbody2D>().AddForce(new Vector2(Random.Range(-100f, 100f), Random.Range(100f, 300f))); yield return(new WaitForSeconds(delay)); f.GetComponent <Character>().Kill(); }
// Start is called before the first frame update void Start() { direction = new Vector3(0, 0, -1); characterData = ScriptableObject.CreateInstance <CharacterData>(); characterData.model = Game.instance.playerData.model; characterData.material = Game.instance.companionBuilder.MaterialByName(Game.instance.playerData.material); commonComponents.characterModel.ChangeModel(characterData); mCharacterStats = GetComponent <ExternalCharacterStatistics>(); mCharacterStats.externalReference = Game.instance.playerStats; follower.GetComponent <ExternalCharacterStatistics>().externalReference = Game.instance.playerStats; commonComponents.simpleMovement.onMoveFinished += OnMoveFinished; commonComponents.simpleAttack.onAttackFinished += OnAttackFinished; commonComponents.killable.onDeath += OnDeath; mFollowerId = Game.instance.playerData.followerUid; OnFollowerChanged(); Game.instance.playerData.onPlayerDataChanged += OnPlayerDataChanged; isAlive = true; commonComponents.killable.health = Game.instance.playerData.health; if (Game.instance.quirkRegistry.IsQuirkActive <DancePartyQuirk>()) { commonComponents.animator.SetBool("Dancing", true); commonComponents.animator.SetInteger("DanceNumber", Random.Range(0, 4)); } Game.instance.whoseTurn = 0; }
public void AddAI(int team) { switch (team) { case 1: for (int i = 0; i < 5; i++) { Follower blue = Instantiate(blueFollower, blueSpawn, false); blue.transform.localPosition = new Vector3(Random.Range(minSpawnDist, maxSpawnDist), 0, Random.Range(minSpawnDist, maxSpawnDist)); blue.transform.localScale = new Vector3(1f, 1f, 1f); blue.myLeader = blueLeader.transform; blue.rb.isKinematic = true; blue.GetComponent <LeaderBehavior>().target = blueLeader.transform; blue.GetComponent <AwayBehavior>().target = blueLeader.transform; blue.instanceNumber = instanceNumber; blue.gameObject.name = "Follower " + instanceNumber; instanceNumber++; _blueTeamCounter++; } break; case 2: for (int i = 0; i < 5; i++) { Follower red = Instantiate(redFollower, redSpawn, false); red.transform.localPosition = new Vector3(Random.Range(minSpawnDist, maxSpawnDist), 0, Random.Range(minSpawnDist, maxSpawnDist)); red.transform.localScale = new Vector3(1f, 1f, 1f); red.myLeader = redLeader.transform; red.rb.isKinematic = true; red.GetComponent <LeaderBehavior>().target = redLeader.transform; red.GetComponent <AwayBehavior>().target = redLeader.transform; red.instanceNumber = instanceNumber; red.gameObject.name = "Follower " + instanceNumber; instanceNumber++; _redTeamCounter++; } break; } UpdateTeamCounter(_blueTeamCounter, _redTeamCounter); }
public void Update() { UpdateFollower(); if (!Live || Follower == null) { return; } if (_edgetune == null) { _edgetune = Follower.GetComponent <RageEdgetune>(); } if (_edgetune == null) { return; } _edgetune.Group.QueueRefresh(); }
private void OnEnable() { follower = target as Follower; placer = follower.GetComponent <Placer>(); endInstruction = serializedObject.FindProperty(nameof(endInstruction)); forwardSpeed = serializedObject.FindProperty(nameof(forwardSpeed)); forwardSpeedCurve = serializedObject.FindProperty(nameof(forwardSpeedCurve)); backwardSpeed = serializedObject.FindProperty(nameof(backwardSpeed)); backwardSpeedCurve = serializedObject.FindProperty(nameof(backwardSpeedCurve)); startDelay = serializedObject.FindProperty(nameof(startDelay)); stopDelay = serializedObject.FindProperty(nameof(stopDelay)); rotateTowards = serializedObject.FindProperty(nameof(rotateTowards)); lookAt = serializedObject.FindProperty(nameof(lookAt)); lookAtAxis = serializedObject.FindProperty(nameof(lookAtAxis)); destroyOnStop = serializedObject.FindProperty(nameof(destroyOnStop)); unscaledDeltaTime = serializedObject.FindProperty(nameof(unscaledDeltaTime)); }
private void CopyPosition( ) { if (Local) { if (!FollowerTransform.localPosition.Equals(transform.localPosition)) { FollowerTransform.localPosition = transform.localPosition; } return; } var fsBody = Follower.GetComponent <FSBodyComponent>(); if (fsBody != null && fsBody.body != null) { fsBody.body.Position = new FVector2(transform.position.x, transform.position.y); } else { CopyTransformPosition(); } }
private void CopyRotation( ) { if (Local) { if (!FollowerTransform.localRotation.Equals(transform.localRotation)) { FollowerTransform.localRotation = transform.localRotation; } return; } var fsBody = Follower.GetComponent <FSBodyComponent>(); if (fsBody != null && fsBody.body != null) { fsBody.body.Rotation = transform.rotation.eulerAngles.z * Mathf.Deg2Rad; } else if (!FollowerTransform.rotation.Equals(transform.rotation)) { FollowerTransform.rotation = Mathf.Approximately(RotationSnap, 0f) ? transform.rotation : Quaternion.Slerp(FollowerTransform.rotation, transform.rotation, RotationSnap * Time.deltaTime); } }
public void AttachedComponentsCheck() { FollowerGroup = _follower.GetComponent <RageGroup>(); FollowerSpline = _follower.GetComponent <RageSpline>(); _edgetune = Follower.GetComponent <RageEdgetune>(); }