private void OnTriggerEnter(Collider other) { if (other.gameObject.name == "RotationPos") { transform.parent = other.gameObject.transform; other.gameObject.GetComponent <Collider>().enabled = false; } else if (other.gameObject.name == "Attack_Area") { if (enemy.Chase) { enemy.Chase = false; enemy.Escape = true; } } if (other.gameObject.tag == "Enemy_T03" || other.gameObject.tag == "VFX") { if (other.gameObject.tag == "VFX") { UIController.IncreaseScore(scoreValue); ScoreMark.SpawnScoreMark(scoreValue, gameObject); } VFXManager.SpawnConfetti(transform); SoundManager.PlaySFX("Die", transform); Destroy(gameObject); } }
private void OnTriggerEnter(Collider other) { if (other.gameObject.name == "Attack_Area") { enemy.Chase = false; enemy.Animation_Controller.TriggerAttack(); } if (other.gameObject.tag == "Enemy_T01" || other.gameObject.tag == "VFX") { if (other.gameObject.tag == "VFX") { UIController.IncreaseScore(scoreValue); ScoreMark.SpawnScoreMark(scoreValue, gameObject); VFXManager.SpawnConfetti(transform); SoundManager.PlaySFX("Die", transform); } if (other.gameObject.tag == "Enemy_T01") { VFXManager.SpawnConfetti(transform); SoundManager.PlaySFX("Despawn", transform); } Destroy(gameObject); } }
public void FootstepFrame() { Vector3 pos = transform.position; m_CharacterAudio.Step(pos); VFXManager.PlayVFX(VFXType.StepPuff, pos); }
public void AttackFrame() { if (m_CurrentTargetCharacterData == null) { m_ClearPostAttack = false; return; } //if we can't reach the target anymore when it's time to damage, then that attack miss. if (m_CharacterData.CanAttackReach(m_CurrentTargetCharacterData)) { m_CharacterData.Attack(m_CurrentTargetCharacterData); var attackPos = m_CurrentTargetCharacterData.transform.position + transform.up * 0.5f; VFXManager.PlayVFX(VFXType.Hit, attackPos); SFXManager.PlaySound(m_CharacterAudio.UseType, new SFXManager.PlayData() { Clip = m_CharacterData.Equipment.Weapon.GetHitSound(), PitchMin = 0.8f, PitchMax = 1.2f, Position = attackPos }); } if (m_ClearPostAttack) { m_ClearPostAttack = false; m_CurrentTargetCharacterData = null; m_TargetInteractable = null; } m_CurrentState = State.DEFAULT; }
public void EndCombo() { VFXManager.SpawnParticleOneshot(VFXManager.instance.endComboVFX, scoreText.transform.position); if (score > hiScore) { VFXManager.SpawnParticleOneshot(VFXManager.instance.newHiScoreVFX, hiScoreText.transform.position); hiScore = score; } comboText.color = comboTextColor; if (comboCounter < 10) { GameManager.instance.score -= 3; } comboCounter = 0; if (GameManager.instance.score < 0) { GameManager.instance.score = Mathf.Clamp(GameManager.instance.score + GameManager.instance.comboCounter, 0, int.MaxValue); } UpdateScoreDisplay(); }
private void Awake() { model = transform.GetChild(0).gameObject; modelAnim = model.GetComponent <Animator>(); vfxManager = FindObjectOfType <VFXManager>(); catchVFXDuration = catchVFX.GetComponent <ParticleSystem>().main.duration; spawnVFXDuration = spawnVFX.GetComponent <ParticleSystem>().main.duration; }
private void Awake() { current = this; pools = GetComponents <ObjectPool>(); if (pools.Length < 1) { Debug.LogError("There are no pools attached to this GameObject from which to spawn!"); } }
private void Awake() { if (instance == null) { instance = this; } particleParent = new GameObject().transform; particleParent.name = "ParticleParent"; }
private void SpawnSingle01(List <GameObject> monsterList) { foreach (GameObject position in monsterList) { VFXManager.SpawningEnemy(position.transform); SoundManager.PlaySFX("Spawn", transform); StartCoroutine(SpawnEnemySingle01(position.transform)); } ResetList(monsterList); }
public void DestroyPreviousLevel() { foreach (GameObject entry in entityList) { Destroy(entry); } VFXManager.DestroyAllParticles(); eliminationRequiredList.Clear(); entityList.Clear(); }
private void OnTriggerEnter2D(Collider2D collision) { if (collision.CompareTag("Player")) { VFXManager.SpawnParticleOneshot(VFXManager.instance.powerUpCollectVFX, transform.position, effect.backgroundColor); AudioManager.instance.Play("PickupDestroy"); vaus.ReceivePowerUp(effect); DestroyPowerUp(); } }
void ThuHoach() { CayTrong cay = dat_current.Tree; Vector3 pos = dat_current.getDiaChi(); Kho.AddItemSave(cay, cay.SoLuong); dat_current.ThuHoach(); VFXManager.ThuHoach(vfx, cay, cay.SoLuong, pos); SaveGame(); }
public void SpawnWaveArea01(List <GameObject> monsterList) // need Change { foreach (GameObject position in monsterList) { VFXManager.SpawningEnemy(position.transform); SoundManager.PlaySFX("Spawn", transform); SoundManager.PlaySFX("SpawnCry", transform); StartCoroutine(SpawnEnemyWaveArea01(position.transform)); } ResetList(monsterList); }
private void Awake() { if (instance == null) { instance = this; } else { Destroy(this.gameObject); } }
public void SpawnWaveArea04(List <GameObject> monsterList) { foreach (GameObject position in monsterList) { VFXManager.SpawningEnemy(position.transform); SoundManager.PlaySFX("Spawn", transform); SoundManager.PlaySFX("SpawnCry", transform); GameObject enemy = Instantiate(Enemy_T04, position.transform.position, Quaternion.Euler(0, -90, 0)) as GameObject; } ResetList(monsterList); }
void Start() { if (vfxManager == null) { vfxManager = VFXManager.Instance; } if (!inited) { Init(); } }
private void LoadData() { Physics2D.IgnoreLayerCollision(LayerMask.NameToLayer("Player"), LayerMask.NameToLayer("Enemy")); SceneManager.sceneLoaded += (Scene, Load) => Languages.UpdateLanguageInScene(); Languages.LanguageCurrent = Languages.Nation.VietNam; Languages.LoadData(); VFXManager.LoadData(); ChestManager.LoadData(); RewardManager.LoadData(); WeaponManager.LoadData(); DataMap.LoadData(); }
public override bool Use(CharacterData user) { StatSystem.StatModifier modifier = new StatSystem.StatModifier(); modifier.ModifierMode = StatSystem.StatModifier.Mode.Absolute; modifier.Stats.strength = StrengthChange; VFXManager.PlayVFX(VFXType.Stronger, user.transform.position); user.Stats.AddTimedModifier(modifier, Duration, "StrengthAdd", EffectSprite); return(true); }
private void Update() { if (heldObject != null) { heldObject.transform.position = (Vector2)Camera.main.ScreenToWorldPoint(Input.mousePosition); //Rect scrRect = AspectUtility.screenRect; //Vector3 minScreenBounds = Camera.main.ScreenToWorldPoint(scrRect.min); //Vector3 maxScreenBounds = Camera.main.ScreenToWorldPoint(scrRect.max); Vector3 minScreenBounds = Camera.main.ScreenToWorldPoint(Vector2.zero); Vector3 maxScreenBounds = Camera.main.ScreenToWorldPoint(new Vector2(Screen.width, Screen.height)); heldObject.transform.position = new Vector3( Mathf.Clamp(heldObject.transform.position.x, minScreenBounds.x, maxScreenBounds.x), Mathf.Clamp(heldObject.transform.position.y, minScreenBounds.y, maxScreenBounds.y), heldObject.transform.position.z); } if (Input.GetMouseButtonUp(0)) { if (heldObject != null) { AudioManager.instance.Play("PutDown"); VFXManager.SpawnParticleOneshot(VFXManager.instance.dropVFX, Camera.main.ScreenToWorldPoint(Input.mousePosition)); heldObject = null; } } if (Input.GetMouseButtonDown(0)) { if (!eye.IsInClickDistance()) { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit2D hit = Physics2D.Raycast(ray.origin, ray.direction, Mathf.Infinity, dragMask); if (hit.collider != null) { AudioManager.instance.Play("PickUp"); VFXManager.SpawnParticleOneshot(VFXManager.instance.clickEmptyVFX, Camera.main.ScreenToWorldPoint(Input.mousePosition)); //Debug.Log(hit.collider.gameObject.name); heldObject = hit.collider.gameObject; } else { AudioManager.instance.Play("ClickEmpty"); VFXManager.SpawnParticleOneshot(VFXManager.instance.clickEmptyVFX, Camera.main.ScreenToWorldPoint(Input.mousePosition)); } } } }
public override bool Use(CharacterData user) { if (user.Stats.CurrentHealth == user.Stats.stats.health) { return(false); } VFXManager.PlayVFX(VFXType.Healing, user.transform.position); user.Stats.ChangeHealth(Mathf.FloorToInt(HealthPurcentageAmount / 100.0f * user.Stats.stats.health)); return(true); }
void Start() { if (Instance == null) { Instance = this; } else if (Instance == this) { Destroy(gameObject); } DontDestroyOnLoad(gameObject); }
private void Awake() { DontDestroyOnLoad(this.gameObject); Instance = this; if (Instance != null && Instance != this) { Destroy(this.gameObject); } else { Instance = this; } }
// Update is called once per frame void Update() { if (GameLevelManager.GetSceneName() == "World1_1") { ControlShootHelper(); } if (Input.GetButtonDown("Fire1")) { VFXManager.SpawnShootVRX(shootRot); SoundManager.PlaySFX("Shoot", shootRot.transform); } Debug.DrawRay(Camera.main.transform.position, Camera.main.transform.forward * 100, Color.red); }
public void ConfigureAnimation(double[] effectIncrement, EffectType[] effectType) { _effectsManager = new VFXManager(false) { Increment = effectIncrement[0], EffectType = effectType[0] }; _hoverEffectsManager = new VFXManager { Increment = effectIncrement[1], EffectType = effectType[1] }; _hoverEffectsManager.OnAnimationProgress += sender => Invalidate(); _effectsManager.OnAnimationProgress += sender => Invalidate(); }
private void OnTriggerEnter(Collider other) { if (other.gameObject.name == "Crystal") { return; } if (gameObject.tag == "InteractiveObject" && other.gameObject.tag == "VFX") { VFXManager.SpawnConfetti(transform); SoundManager.PlaySFX("Item", transform); ScoreMark.SpawnScoreMark((int)ScoreValue.Coin, gameObject); Destroy(gameObject); } }
public void ConfigureAnimation(double[] effectIncrement, EffectType[] effectType) { VFXManager effectsManager = new VFXManager { Increment = effectIncrement[0], EffectType = effectType[0] }; _rippleEffectsManager = new VFXManager(false) { Increment = effectIncrement[1], SecondaryIncrement = effectIncrement[2], EffectType = effectType[1] }; effectsManager.OnAnimationProgress += sender => Invalidate(); _rippleEffectsManager.OnAnimationProgress += sender => Invalidate(); effectsManager.StartNewAnimation(Toggle ? AnimationDirection.In : AnimationDirection.Out); }
//-------------------------- // MonoBehaviour methods //-------------------------- private void Awake() { // singleton if (instance != null && instance != this) { Debug.LogError("Impossible to initiate more than one VFXManager. Destroying the instance..."); Destroy(this.gameObject); return; } else { instance = this; } DontDestroyOnLoad(this.gameObject); }
public void FootstepFrame() { Vector3 pos = transform.position; m_CharacterAudio.Step(pos); SFXManager.PlaySound(SFXManager.Use.Player, new SFXManager.PlayData() { Clip = SpurSoundClips[Random.Range(0, SpurSoundClips.Length)], Position = pos, PitchMin = 0.8f, PitchMax = 1.2f, Volume = 0.3f }); VFXManager.PlayVFX(VFXType.StepPuff, pos); }
private void CollisionEnter(Collider2D collider, CollisionSide side) { if (collider.CompareTag("Wall")) { BounceOffSide(side); //VFXManager.SpawnParticleOneshot(VFXManager.instance.ballBounceVFX,(Vector2)transform.position + GetDirFromSide(side) * wallCollider.bounds.extents.x); } else if (collider.CompareTag("Player")) { lastPriorityBounceTime = Time.time; BounceOffSide(CollisionSide.below); if (side == CollisionSide.below) { float vausSpd = vaus.GetPositionXDifference(); float spinValue = Mathf.Lerp(0, maxSpin, Mathf.Abs(vausSpd) / LevelManager.playArea.width) * Mathf.Sign(vausSpd); SetSpin(spinValue); } VFXManager.SpawnParticleOneshot(VFXManager.instance.ballBounceVFX, (Vector2)transform.position + GetDirFromSide(side) * wallCollider.bounds.extents.x); } else { BounceOffSide(side); BaseBlock block = collider.GetComponent <BaseBlock>(); if (block != null) { lastPriorityBounceTime = Time.time; VFXManager.SpawnParticleOneshot(VFXManager.instance.blockDamagedVFX, (Vector2)transform.position + GetDirFromSide(side) * wallCollider.bounds.extents.x); block.OnHit(); } else { Debug.LogError("Bounced off unidentified object!"); VFXManager.SpawnParticleOneshot(VFXManager.instance.ballBounceVFX, (Vector2)transform.position + GetDirFromSide(side) * wallCollider.bounds.extents.x); } } }
private void GetInputFromPlayer(DIRECTION dir, Vector3 start, Vector3 end) { switch (dir) { case DIRECTION.UP: if (currentDirection != TraversalDirection.BOTTOM) { currentDirection = TraversalDirection.TOP; } goto default; case DIRECTION.DOWN: if (currentDirection != TraversalDirection.TOP) { currentDirection = TraversalDirection.BOTTOM; } goto default; case DIRECTION.LEFT: if (currentDirection != TraversalDirection.RIGHT) { currentDirection = TraversalDirection.LEFT; } goto default; case DIRECTION.RIGHT: if (currentDirection != TraversalDirection.LEFT) { currentDirection = TraversalDirection.RIGHT; } goto default; default: //VFX if (GameState == GAMESTATE.INITILIZECOMPLETE) { snakeController.SetPosition(currentNode); GameState = GAMESTATE.GAMEPLAY; } VFXManager.OnInputLineVFX(start, end); break; } }