Example #1
0
 void Start()
 {
     shooter = GetComponentInParent<Gun>().GetComponentInParent<PlayerController>().gameObject;
     cameraShaker = FindObjectOfType<Camera>().GetComponent<CameraShaker>();
     DisconnectFromParent(); // make projectile orphan
     SetProjectileTag();
 }
Example #2
0
 public static void Initialize()
 {
     if (instance == null)
     {
       GameObject shaker = new GameObject("CameraShake");
       shaker.transform.parent = Camera.main.transform;
       instance = shaker.AddComponent<CameraShaker>();
     }
 }
Example #3
0
    public virtual void Awake()
    {
        if (cameraShaker == null)
        {
            cameraShaker = gameObject.GetComponent<CameraShaker>();
        }

        if (attackSound == null)
        {
            attackSound = gameObject.GetComponent<SoundEffectHandler>();
        }
    }
Example #4
0
    private IEnumerator ExeMeleeAttackCoroutine()
    {
        _originalSize     = transform.localScale;
        _originalSpeed    = _agent.speed;
        _originalMaterial = _renderer.material;
        _agent.speed      = attackSpeed;
        _agent.SetDestination(GameSceneController.PlayerTransform.position);
        _renderer.material = attackMaterial;
        yield return(new WaitForSeconds(attackDuration));

        _agent.speed = _originalSpeed;
        float startTime = Time.time;
        float timePast;

        do
        {
            yield return(null);

            timePast             = Time.time - startTime;
            transform.localScale = Vector3.Lerp(_originalSize, attackSize, timePast / expandTime);
            transform.Rotate(0f, attackRotationSpeed * Time.deltaTime, 0f);
        } while (timePast < expandTime);

        Physics.OverlapSphereNonAlloc(transform.position, attackRange, _victims, 1 << LayerManager.PlayerLayer);
        if (_victims[0] != null)
        {
            _victims[0].GetComponent <PlayerController>().GetDamaged(identifierName, damage);
        }
        startTime = Time.time;
        do
        {
            yield return(null);

            timePast             = Time.time - startTime;
            transform.localScale = Vector3.Lerp(attackShake, _originalSize, timePast / shrinkTime);
            transform.Rotate(0f, attackRotationSpeed * Time.deltaTime, 0f);
        } while (timePast < shrinkTime);

        _renderer.material = _originalMaterial;
        CameraShaker.ShakeAt(transform.position, attackShake);

        yield return(new WaitForSeconds(attackInterval));

        _attackCoroutine = null;
        _isAttacking     = false;
    }
Example #5
0
        /// <summary>
        /// 设置收到打击动画
        /// </summary>
        public override void SetTakeHit(int amount)
        {
            if (Fsm.State != States.Normal)
            {
                return;
            }
            base.SetTakeHit(amount);

            //TODO: 被打动画
//            if (!animator.GetCurrentAnimatorStateInfo(0).IsName("TakeHit")) animator.Play("TakeHit");

            QMhelper.SetCurrentHp(Health.health);
            if (CameraShaker.Instance != null)
            {
                CameraShaker.InitShake(0.075f, 2f);
            }
        }
Example #6
0
 void AirJump()
 {
     StopCoyoteTimeout();
     SoundManager.JumpSound();
     CameraShaker.TinyShake();
     EndShortHopWindow();
     InterruptMeteor();
     rb2d.velocity = new Vector2(
         x: rb2d.velocity.x,
         y: jumpSpeed
         );
     ImpactDust();
     airJumps--;
     anim.SetTrigger(Buttons.JUMP);
     InterruptAttack();
     ChangeAirspeed();
 }
Example #7
0
 void Die()
 {
     AlerterText.AlertList(deathText);
     // if the animation gets interrupted or something, use this as a failsafe
     Invoke("FinishDyingAnimation", 3f);
     this.dead = true;
     SoundManager.PlayerDieSound();
     currentEnergy = 0;
     CameraShaker.Shake(0.2f, 0.1f);
     LockInSpace();
     Freeze();
     anim.SetTrigger("Die");
     anim.SetBool("TouchingWall", false);
     InterruptEverything();
     EndCombatStanceCooldown();
     ResetAttackTriggers();
 }
Example #8
0
    void Start()
    {
        player = GameObject.FindGameObjectWithTag("Player");
        weapon = GameObject.FindGameObjectWithTag("Weapon");
        //audioManager = GameObject.FindGameObjectWithTag("AudioManager");
        cam = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <CameraShaker>();
        Invoke("DestroyProjectile", lifeTime);
        if (effectDestroy != null)
        {
            Instantiate(effectDestroy, transform.position, Quaternion.identity);
        }


        int enemyProjectileLayer = LayerMask.NameToLayer("EnemyProjectile");

        Physics2D.IgnoreLayerCollision(gameObject.layer, enemyProjectileLayer);
    }
Example #9
0
    // Update is called once per frame
    void Update()
    {
        if (Mutation == 1 && dnaChain3.winner2 != true)
        {
            cam2.backgroundColor = color1;

            if (shakeOnlyOnce == false)
            {
                CameraShaker.GetInstance("Main Camerap2").ShakeOnce(5f, 5f, .1f, 1);
                FindObjectOfType <AudioManager>().Play("Wrong");
                shakeOnlyOnce = true;
            }
        }

        if (Mutation == 2 && dnaChain3.winner2 != true)
        {
            cam2.backgroundColor = color2;
            if (shakeOnlyOnce == true)
            {
                CameraShaker.GetInstance("Main Camerap2").ShakeOnce(5f, 5f, .1f, 1);
                FindObjectOfType <AudioManager>().Play("Wrong");
                shakeOnlyOnce = false;
            }
        }

        if (Mutation == 3 && dnaChain3.winner2 != true)
        {
            cam2.backgroundColor = color3;
            gameOverText.SetActive(true);


            cameraParent2.transform.position = Vector3.Lerp(cameraParent2.transform.position, player.transform.position, 2f * Time.deltaTime);
            if (cam2.transform.position.y <= 1f)
            {
                cam2.backgroundColor = color4;
                gameOverText.SetActive(false);
                Mutation = 0;
            }

            if (shakeOnlyOnce == true)
            {
                CameraShaker.GetInstance("Main Camerap2").ShakeOnce(5f, 5f, .1f, 1);
                shakeOnlyOnce = false;
            }
        }
    }
 void Die()
 {
     this.dead = true;
     SoundManager.PlayerDieSound();
     this.envDmgSusceptible = false;
     currentEnergy          = 0;
     CameraShaker.Shake(0.2f, 0.1f);
     deathParticles.Emit(50);
     LockInSpace();
     Freeze();
     anim.SetTrigger("Die");
     anim.SetBool("touchingWall", false);
     DisableShooting();
     InterruptEverything();
     ResetAttackTriggers();
     ResetAirJumps();
 }
Example #11
0
    void Start()
    {
        ps = transform.parent.Find("ParticleSystem").GetComponent <ParticleSystem>();

        CameraScript[] cameraRigs = GameObject.FindObjectsOfType <CameraScript>();
        foreach (CameraScript rig in cameraRigs)
        {
            if (rig.playerToFollow == 1)
            {
                cameraShakerPlayer1 = rig.transform.GetChild(0).GetComponent <CameraShaker>();
            }
            else if (rig.playerToFollow == 2)
            {
                cameraShakerPlayer2 = rig.transform.GetChild(0).GetComponent <CameraShaker>();
            }
        }
    }
Example #12
0
    void Start()
    {
        // 처음에 미사일을 발사할 수 있도록 제어변수를 true로 설정
        FireState = true;
        // 메모리 풀을 초기화합니다.
        MPool = new MemoryPool();
        // PlayerMissile을 MissileMaxPool만큼 생성합니다.
        MPool.Create(Click, MissileMaxPool);
        // 배열도 초기화 합니다.(이때 모든 값은 null이 됩니다.)
        MissileArray = new GameObject[MissileMaxPool];

        FireShoot = false;
        FireCount = 0;
        FireLimit = 50;

        Camera = GameObject.FindWithTag("MainCamera").GetComponent <CameraShaker>();
    }
Example #13
0
    private static int StopSkillScreenEffect(IntPtr L)
    {
        // 如果处于CG中,当前相机会enable false,此时忽略这些效果
        Camera cam = Main.Main3DCamera;

        if (cam == null || !cam.enabled)
        {
            return(0);
        }
        int       count = LuaDLL.lua_gettop(L);
        const int nRet  = 0;

        if (LuaScriptMgr.CheckTypes(L, 1, typeof(double)))
        {
            int effect_type = (int)LuaScriptMgr.GetNumber(L, 1);

            if (effect_type == 1)  // 打断相机振动
            {
                string       key = (string)LuaScriptMgr.GetString(L, 2);
                CameraShaker cs  = cam.gameObject.GetComponent <CameraShaker>();
                if (cs != null && key != string.Empty)
                {
                    cs.RemoveShakeNodeByKey(key);
                }
                else
                {
                    HobaDebuger.LogWarning("error in StopSkillScreenEffect value check !");
                }
            }
            else if (effect_type == 2)  // 打断相机距离变换
            {
                CCamCtrlMan.Instance.StopCameraStretching();
            }
            else if (effect_type == 3)  // 打断RadialBlur
            {
                var obj_go = LuaScriptMgr.GetUnityObject <GameObject>(L, 2);
                var blur   = obj_go.GetComponentInChildren <RadialBlurBoot>();
                if (blur != null)
                {
                    blur.StopEffect();
                }
            }
        }
        return(CheckReturnNum(L, count, nRet));
    }
Example #14
0
    void Start()
    {
        cameraShaker = GameObject.FindWithTag("Main").GetComponent <CameraShaker>();

        soundEffectManager = GameObject.FindWithTag("Main").GetComponent <SoundEffectManager>();

        minWidth  = (int)(Screen.width * 0.25f);
        maxWidth  = (int)(Screen.width * 0.75f);
        minHeight = (int)(Screen.height * 0.25f);
        maxHeight = (int)(Screen.height * 0.75f);

        bloodIndex         = new List <int>();
        bloodRect          = new List <Rect>();
        bloodRotation      = new List <int>();
        bloodShowTime      = new List <float>();
        bloodShowedTime    = new List <float>();
        bloodShowTimeDelay = new List <float>();
    }
Example #15
0
        CameraShaker cameraShake; //for accessing the cameraShake boolean on the main camera script *temp

        void Start()
        {
            cameraObj   = GameObject.Find("Main Camera");          //find the main camera object *temp
            cameraShake = cameraObj.GetComponent <CameraShaker>(); //get access to the CameraShaker class *temp
                                                                   //default at start is main menu
            currentstate = MenuStates.mainM;
            mainMenu.SetActive(true);
            optionsMenu.SetActive(false);
            scenarioScreen.SetActive(false);
            spaceScreen.SetActive(false);
            endScreen.SetActive(false);
            missionScreen.SetActive(false);
            buildScreen.SetActive(false);
            alertsMenu.SetActive(false);
            inventoryMenu.SetActive(false);
            simulationMenu.SetActive(false);
            previousstate = currentstate;
        }
Example #16
0
    void FireProjectile(IProjectile projectile)
    {
        Vector2 firePosition = Camera.main.ScreenToWorldPoint(new Vector2(Input.mousePosition.x, Input.mousePosition.y));

        Vector2 direction = firePosition - (Vector2)transform.position;

        direction.Normalize();

        GameObject firedShot = Instantiate(projectile.GetObjectToInstantiate(), bulletSpawnPoint);

        firedShot.GetComponent <Rigidbody2D>().velocity = direction * projectile.GetProjectileSpeed();

        CameraShaker cameraShaker = GetComponent <CameraShaker>();

        firedShot.GetComponent <IProjectile>().ShakeCamera(cameraShaker);

        Destroy(firedShot, projectile.GetMaxTimelimit());
    }
Example #17
0
    public void Die(TakeDamager damager, TakeDamageable damageable)
    {
        //Vector2 throwVector = new Vector2(0, 2.0f);
        //Vector2 damagerToThis = damager.transform.position - transform.position;

        //throwVector.x = Mathf.Sign(damagerToThis.x) * -4.0f;
        //SetMoveVector(throwVector);

        m_Animator.SetTrigger(m_HashDeathPara);

        dieAudio.PlayRandomSound();

        m_Dead = true;
        //Debug.Log(moveVector);
        //m_Collider.enabled = false;
        gameObject.layer = 20;
        CameraShaker.Shake(0.15f, 0.3f);
    }
Example #18
0
    //Awake is always called before any Start functions
    private void Awake()
    {
        //Check if instance already exists
        if (instance == null)
        {
            //if not, set instance to this
            instance = this;
        }
        //If instance already exists and it's not this:
        else if (instance != this)
        {
            //Then destroy this. This enforces our singleton pattern, meaning there can only ever be one instance of a GameManager.
            Destroy(gameObject);
        }

        cameraTransform  = Camera.main.transform;
        originalPosition = cameraTransform.localPosition;
    }
    //called at the start of the supercruiseMid animation
    public void StartSupercruise()
    {
        preDashSpeed = Mathf.Abs(rb2d.velocity.x);

        OpenSupercruiseWings();
        SoundManager.DashSound();
        this.supercruise = true;
        anim.ResetTrigger("InterruptSupercruise");
        anim.ResetTrigger("EndSupercruise");
        BackwardDust();
        wings.Open();
        wings.EnableJets();
        wings.SupercruiseMid();
        Freeze();
        CameraShaker.Shake(0.1f, 0.1f);
        //keep them level
        rb2d.constraints = RigidbodyConstraints2D.FreezeRotation | RigidbodyConstraints2D.FreezePositionY;
    }
Example #20
0
    void OnTriggerEnter2D(Collider2D other)
    {
        if (ignorePlayer && other.tag.ToLower().Contains("player"))
        {
            return;
        }

        if (other.CompareTag(Tags.EnemyHitbox))
        {
            return;
        }

        if (impactShake)
        {
            CameraShaker.TinyShake();
        }
        OnImpact(other);
    }
Example #21
0
    void Start()
    {
        shaker = cam.GetComponent <CameraShaker>();
        Debug.Assert(shaker != null);

        deathEffect = cam.GetComponent <DeathEffectShader>();
        Debug.Assert(deathEffect != null);

        for (int i = 0; i < weaponsList.Length; i++)
        {
            gunScript gun = weaponsList[i].GetComponent <gunScript>();

            gunScriptList.Add(gun);
        }

        audioController = GetComponentInChildren <playerAudio>();
        Debug.Assert(audioController != null);
    }
Example #22
0
    void Start()
    {
        maze                 = GameObject.FindWithTag("Main").GetComponent <MazeGenerator>();
        lookAtPoint          = GameObject.FindWithTag("LookAtPoint");
        player               = GameObject.FindWithTag("Player");
        playerMentality      = player.GetComponent <Mentality>();
        playerCharacterMotor = player.GetComponent <CharacterMotor>();
        playerMouseLook      = player.GetComponent <MouseLook2>();

        cameraShaker = GameObject.FindWithTag("Main").GetComponent <CameraShaker>();

        soundEffectManager = GameObject.FindWithTag("Main").GetComponent <SoundEffectManager>();
        soundEffectManager.adjustSound();

        mainAudioSource = GameObject.FindWithTag("Main").GetComponent <AudioSource>();

        bloodSplatter = GameObject.FindWithTag("Main").GetComponent <BloodSplatter>();

        scoreboard = GameObject.FindWithTag("Main").GetComponent <Scoreboard>();

        countDown = GameObject.FindWithTag("Main").GetComponent <CountDown>();

        fadeOutAndFadeIn = Camera.main.GetComponent <FadeOutAndFadeIn>();

        virtualPlayer      = new GameObject();
        virtualPlayer.name = "virtual player";

        childrenRenderers = GetComponentsInChildren <Renderer>();
        sphereCollider    = GetComponent <SphereCollider>();

        npcState       = GetComponent <NPCState>();
        npcState.state = NPCState.MAKING_DECISION;

        isInsane       = false;
        isMoving       = false;
        isCameraMoving = false;

        fakeBossPositionDelta = new Vector2(0, 0);

        if (GameMode.mode == GameMode.ESCAPING)
        {
            player.GetComponent <Compass>().enabled = false;
        }
    }
Example #23
0
    public override void ExtendedAttackLand(Entity e)
    {
        if (e == null)
        {
            return;
        }

        // the succ
        Rigidbody2D r = e.GetComponent <Rigidbody2D>();

        if (pullInEntity && e.staggerable && r != null)
        {
            r.MovePosition(this.transform.position);
        }

        //run self knockback
        if (selfKnockBack)
        {
            SelfKnockBack();
        }
        //give the player some energy
        if (gainsEnergy)
        {
            player.GainEnergy(this.energyGained);
        }
        //deplete energy if necessary
        if (costsEnergy)
        {
            player.LoseEnergy(this.energyCost);
        }

        if (attackLandEvent)
        {
            player.OnAttackLand(this);
        }

        //run hitstop if it's a player attack
        if (hitstopLength > 0.0f && this.gameObject.CompareTag(Tags.PlayerHitbox))
        {
            Hitstop.Run(this.hitstopLength);
            CameraShaker.TinyShake();
        }
    }
Example #24
0
        /// <summary>
        /// 死亡
        /// </summary>
        public override void Die()
        {
            allowMove   = false;
            Health.dead = true;
            allowAttack = false;
            if (CameraShaker.Instance != null)
            {
                CameraShaker.InitShake(0.25f, 1f);
            }

            Fsm.ChangeState(States.Dead, StateTransition.Overwrite);
            velocity = Vector2.zero;

            Instantiate(ResourceLoader.DeadUi);

            Fsm.ChangeState(States.Normal, StateTransition.Overwrite);

            HidePlayer();
        }
    public void Die(Damager damager, Damageable damageable)
    {
        Vector2 throwVector   = new Vector2(0, 5.0f);
        Vector2 damagerToThis = damager.transform.position - transform.position;

        throwVector.x = Mathf.Sign(damagerToThis.x) * 4.0f;
        SetMoveVector(throwVector);

        animator.SetTrigger(hashDeathParameter);

        if (dieAudio != null)
        {
            dieAudio.PlayRandomSound();
        }

        dead             = true;
        collider.enabled = false;

        CameraShaker.Shake(0.15f, 0.3f);
    }
    public void Trigger(TurtleDamage turtleDamage, bool extreme = false)
    {
        this.turtleDamage         = turtleDamage;
        turtleDamage.IsInvincible = true;
        isInvicibilityActive      = true;
        invincibilityTimer        = 0f;
        isExtreme = extreme;

        isEffectActive = true;
        effectTimer    = 0f;
        fadeDirection  = 1;
        if (extreme)
        {
            CameraShaker.Shake(CameraShakeMagnitude * ExtremeMultiplier, CameraShakeRoughness * ExtremeMultiplier, EffectHalfDuration * ExtremeMultiplier / 2f, EffectHalfDuration * ExtremeMultiplier / 2f, EffectHalfDuration * ExtremeMultiplier);
        }
        else
        {
            CameraShaker.Shake(CameraShakeMagnitude, CameraShakeRoughness, EffectHalfDuration / 2f, EffectHalfDuration / 2f, EffectHalfDuration);
        }
    }
Example #27
0
        protected virtual void OnEntityEnter(Health health)
        {
            if (healthsDamaged.Contains(health))
            {
                return;
            }

            // camera shake
            if (CameraShaker.Instance != null)
            {
                CameraShaker.InitShake(0.2f, 1f);
            }

            var damaged = health.TakeDamage(Damage);

            if (damaged)
            {
                healthsDamaged.Add(health);
            }
        }
Example #28
0
    // メインカメラ(デフォルト)をゲットして振動する
    public static void ShakeOnce(float duration = 1.0f, float speed = 10.0f, Vector3?amount = null, Camera camera = null, bool deltaMovement = true, AnimationCurve curve = null)
    {
        // 初期化のセット
        CameraShaker instance = ((camera != null) ? camera : Camera.main).gameObject.AddComponent <CameraShaker>();

        instance._duration = duration;
        instance._speed    = speed;
        if (amount != null)
        {
            instance._amount = (Vector3)amount;
        }
        if (curve != null)
        {
            instance._curve = curve;
        }
        instance._deltaMovement = deltaMovement;

        instance._destroyAfterPlay = true;
        instance.Shake();
    }
Example #29
0
    void OnCollisionEnter2D(Collision2D other)
    {
        source.pitch = Random.Range(lowPitchRange, highPitchRange);
        float hitVol = other.relativeVelocity.magnitude * velToVol;

        if (other.collider.tag == "Wall")
        {
            rb.velocity = CalculateBallVelocity(ballSpeedIncrementOnBounce);
            // float forward = Mathf.Atan2(rb.velocity.y, rb.velocity.x) * Mathf.Rad2Deg;
            // transform.rotation = Quaternion.Euler(0f, 0f, forward);
            source.PlayOneShot(hitWall, hitVol);
            float shakeDuration = 0.2f * (Mathf.Max(Mathf.Abs(rb.velocity.x), Mathf.Abs(rb.velocity.y)) / ballMaxSpeed);
            float shakeAmount   = 0.1f * (Mathf.Max(Mathf.Abs(rb.velocity.x), Mathf.Abs(rb.velocity.y)) / ballMaxSpeed);;
            CameraShaker.Shake(shakeDuration, shakeAmount);
        }
        else if (other.collider.tag == "Player")
        {
            other.collider.GetComponent <LivingEntity>().TakeDamage(999);
            CameraShaker.Shake(0.3f, 0.3f);
        }
    }
Example #30
0
        /// <summary>
        /// 检查场景内敌人, 敌人全部被消灭后开门
        /// </summary>
        private void CheckForEnemiesToOpen()
        {
            if (opened || AreEnemiesAlive())
            {
                return;
            }

            Pickable = true;
            opened   = true;

            if (CameraShaker.Instance != null)
            {
                CameraShaker.InitShake(0.2f, 1f);
            }

            if (!animator.GetCurrentAnimatorStateInfo(0).IsName("Open"))
            {
                animator.Play("Open");
            }
            AudioManager.Instance.PlayAmbientSoundEffect("DoorOpen");
        }
Example #31
0
    // Start is called before the first frame update
    void Start()
    {
        //Initialize the components
        myRigidbody         = GetComponent <Rigidbody2D>();
        myBoxCollider       = GetComponent <BoxCollider2D>();
        knight              = FindObjectOfType <Knight>();
        cameraShaker        = FindObjectOfType <CameraShaker>();
        isKnightFacingRight = knight.isFacingRight;

        //Determine when direction the projectile should be facing when it first appears
        if (isKnightFacingRight)
        {
            // reverse the current scaling if the x axis
            transform.localScale = new Vector2(-1f, 1f);
        }
        else
        {
            // reverse the current scaling if the x axis
            transform.localScale = new Vector2(1f, 1f);
        }
    }
    private void OnTriggerEnter2D(Collider2D other)
    {
        if (other.tag == "Player")
        {
            if (SAYController.instance.isInvincible == false)
            {
                CameraShaker.ShakeStrong(.20f, .35f);
                SAYPlayerHealthController.instance.DamagePlayer();
                Destroy(gameObject);
            }
        }
        if (other.tag != "Player")
        {
            Destroy(gameObject);
        }

        foreach (Transform t in firePoints)
        {
            Instantiate(bulletGoesRight, t.position, t.rotation);
        }
    }
    public void Shake()
    {
        if (zAmplitude == 0 && xRotAmplitude == 0 && yRotAmplitude == 0)
        {
            CameraShaker.Shake(xAmplitude, xFrequency, xDephasing, xDamping,
                               yAmplitude, yFrequency, yDephasing, yDamping,
                               zRotAmplitude, zRotFrequency, zRotDephasing, zRotDamping,
                               shakeTime, timeToFade);
        }

        else
        {
            CameraShaker.Shake(xAmplitude, xFrequency, xDephasing, xDamping,
                               yAmplitude, yFrequency, yDephasing, yDamping,
                               zAmplitude, zFrequency, zDephasing, zDamping,
                               xRotAmplitude, xRotFrequency, xRotDephasing, xRotDamping,
                               yRotAmplitude, yRotFrequency, yRotDephasing, yRotDamping,
                               zRotAmplitude, zRotFrequency, zRotDephasing, zRotDamping,
                               shakeTime, timeToFade);
        }
    }
Example #34
0
 void Awake()
 {
     shaker = this;
 }
 // Use this for initialization
 void Start()
 {
     _shaker = FindObjectOfType<CameraShaker>();
 }
Example #36
0
	private void Initialize()
	{
		

		Inst = this;

		//Initializing CsDebug
		CsDebug debug = GetComponent<CsDebug>();
		debug.Initialize();

		//Initializing DBManager
		DBManager = new DBManager();
		DBManager.Initialize();

		//Initializing Event Manager
		EventManager = new EventManager();
		EventManager.Initialize();

		ItemManager = new ItemManager();
		ItemManager.Initialize();

		//Initializing NPC Manager
		NPCManager = new NPCManager();
		NPCManager.Initialize();



		PlayerControl = new PlayerControl();
		PlayerControl.Initialize();



		UIManager = new UIManager();
		UIManager.Initialize();


		MutantCharacter mutant1 = GameObject.Find("MutantCharacter").GetComponent<MutantCharacter>();
		mutant1.Initialize();
		mutant1.MyStatus.MaxHealth = 200;
		mutant1.MyStatus.Health = 200;
		mutant1.MyAI.BlackBoard.PatrolLoc = new Vector3(70, 0, -54);
		mutant1.MyAI.BlackBoard.PatrolRange = new Vector3(10, 5, 10);
		mutant1.MyAI.BlackBoard.CombatRange = new Vector3(20, 5, 20);
		mutant1.MyAI.BlackBoard.HasPatrolInfo = true;




		//HumanCharacter enemy1 = GameObject.Find("HumanCharacter2").GetComponent<HumanCharacter>();
		HumanCharacter enemy2 = GameObject.Find("HumanCharacter4").GetComponent<HumanCharacter>();
		//HumanCharacter enemy3 = GameObject.Find("HumanCharacter5").GetComponent<HumanCharacter>();
		//HumanCharacter enemy4 = GameObject.Find("HumanCharacter6").GetComponent<HumanCharacter>();

		AISquad enemySquad = new AISquad();
		//enemySquad.Members.Add(enemy1);
		enemySquad.Members.Add(enemy2);
		//enemySquad.Members.Add(enemy3);
		//enemySquad.Members.Add(enemy4);

		/*
		enemy1.Initialize();
		enemy1.MyAI.Squad = enemySquad;
		ItemManager.LoadNPCInventory(enemy1.Inventory);
		enemy1.MyAI.WeaponSystem.LoadWeaponsFromInventory();
		*/
		enemy2.Initialize();
		enemy2.MyAI.Squad = enemySquad;
		ItemManager.LoadNPCInventory(enemy2.Inventory);
		enemy2.MyAI.WeaponSystem.LoadWeaponsFromInventory();

		/*
		enemy3.Initialize();
		enemy3.MyAI.Squad = enemySquad;
		ItemManager.LoadNPCInventory(enemy3.Inventory);
		enemy3.MyAI.WeaponSystem.LoadWeaponsFromInventory();


		enemy4.Initialize();
		enemy4.MyAI.Squad = enemySquad;
		ItemManager.LoadNPCInventory(enemy4.Inventory);
		enemy4.MyAI.WeaponSystem.LoadWeaponsFromInventory();
		*/

		//enemy1.MyStatus.MaxHealth = 160;
		//enemy1.MyStatus.Health = 160;
		enemy2.MyStatus.MaxHealth = 100;
		enemy2.MyStatus.Health = 100;

		/*
		enemy3.MyStatus.MaxHealth = 80;
		enemy3.MyStatus.Health = 80;

		enemy4.MyStatus.MaxHealth = 100;
		enemy4.MyStatus.Health = 100;
		*/
		enemySquad.IssueSquadCommand();


		CameraController = GameObject.Find("CameraController").GetComponent<CameraController>();
		CameraController.Initialize();

		CameraShaker = CameraController.GetComponent<CameraShaker>();
		CameraShaker.Initialize();

		FXManager = new FXManager();
		FXManager.Initialize(50);

		AIScheduler = new AIScheduler();
		AIScheduler.Initialize();



		CursorManager = new CursorManager();
		CursorManager.Initialize();

		StartCoroutine(DoPerSecond());
		StartCoroutine(DoPerHalfSecond());
	}
Example #37
0
 void OnDestroy()
 {
     shaker = null;
 }
Example #38
0
    void Start()
    {
        instance = this;

        //    originalPos = Camera.main.transform.localPosition;
    }