Esempio n. 1
0
 //Иницицализирует статические поля мэнэджера,чтобы к ниму всегда был доступ
 void InitStaticFields()
 {
     ingamemanager   = GetComponent <InGameManager>();
     soundmanager    = GetComponent <SoundManager>();
     scoremanager    = GetComponent <ScoreManager>();
     ingameuimanager = GetComponent <InGameUIManager>();
 }
Esempio n. 2
0
        /// <summary>
        /// <para>Eng. Pushed Saved Button. </para>
        /// <para>Kor. 저장된 게임 버튼을 눌렀습니다. </para>
        /// </summary>
        public void SavedButtonPushed(GameObject _pushedButton)
        {
            switch (_state)
            {
            case SaveLoadSlotManagerState.NewGameSave:
                _pushedSavedButton = _pushedButton;
                _rewritePanel.SetActive(true);
                break;

            case SaveLoadSlotManagerState.OptionSave:
                _pushedSavedButton = _pushedButton;
                _rewritePanel.SetActive(true);
                break;

            case SaveLoadSlotManagerState.Load:
                _pushedSavedButton = _pushedButton;
                VinoveGameSaveData _savedData = _pushedSavedButton.GetComponent <SavedButtonManager>()._savedData;
                InGameManager.GetInstance().LoadGameByScript(_savedData);
                DisableSlot();
                MainMenuManager.GetInstance().DisableMainMenu();
                InGameManager.GetInstance().VinoveInitialize();
                InGameManager.GetInstance().GameState = Enum.GameState.InGame;
                break;
            }
        }
Esempio n. 3
0
    private void Awake()
    {
        //Singletone
        instance = this;
        //캐릭터 생성
        roomLevel = (Room_TileType)GlobalManager.instance.stageLevel;
        Debug.Log(roomLevel);
        switch ((int)roomLevel)
        {
        case 0:
            numberofRoom = 5;
            break;

        case 1:
            numberofRoom = 8;
            break;

        case 2:
            break;

        default:
            numberofRoom = 5;
            break;
        }

        StartSettingInGM();
    }
Esempio n. 4
0
    // Update is called once per frame
    public override bool ObjUpdate()
    {
        if (InGameManager.GetInstance().GetGameState() != enGameState.playing)
        {
            return(false);
        }
        int length = enemyList.Count - 1;

        for (int i = length; i >= 0; i--)
        {
            if (enemyList[i] == null)
            {
                enemyList.RemoveAt(i);
            }
        }

        if (enemyList.Count > 0)
        {
            return(false);
        }

        intervalTime += Time.deltaTime;

        if (intervalTime < flushTime)
        {
            return(false);
        }

        intervalTime = 0f;

        AddRangeEnemy();
        return(true);
    }
Esempio n. 5
0
    public void Init(PlayerController pCtrl)
    {
        if (pCtrl == null)
        {
            gameObject.SetActive(false); return;
        }

        // TextBox속의 닉네임 설정
        _nameBox.text = pCtrl._pView.Owner.NickName;

        // 따라다닐 오브젝트 설정
        _traceObject = pCtrl.HeadObj;

        // 혹시 null 일 경우 새로 초기화
        if (_inGameMgr == null)
        {
            _inGameMgr = GameManager.Instance.InGameManager;
        }
        if (_canvasRectTrs == null)
        {
            _canvasRectTrs = _inGameMgr.Canvas.GetComponent <RectTransform>();
        }
        if (_camera == null)
        {
            _camera = _inGameMgr.CameraManager.Camera;
        }

        gameObject.SetActive(true);
    }
Esempio n. 6
0
    void Start()
    {
        m_originPos = transform.position;

        theInGame   = FindObjectOfType <InGameManager>();
        theCardInfo = FindObjectOfType <MyCardInfo>();
        theCStat    = FindObjectOfType <CharacterStat>();

        m_aniCtrl = GetComponent <Animator>();

        // 해당 유형의 비활성화 된 객체도 가져온다
        // theCharSlot = Resources.FindObjectsOfTypeAll<CharacterSlot>();
        // 해당 유형의 비활성화 된 객체도 가져온다


        // InGameManager 에서 몇 번째꺼가 켜져있나
        //m_charActiveNum = (int)eCharNum * 9 + m_charSlotNum;
        // InGameManager 에서 몇 번째꺼가 켜져있나


        dist = 1000;

        // 스폰 시 최초 한 번 실행 될 effect
        EffectActive.EffectInstance.CharacterSpawn(this.transform);
        // 스폰 시 최초 한 번 실행 될 effect
    }
Esempio n. 7
0
 private void Awake()
 {
     if (Instance != this)
     {
         Instance = this;
     }
 }
Esempio n. 8
0
    void StartAtk()
    {
        state = AtkState.atkbegin;


        if (Vector3.Distance(parent.transform.position, target.transform.position) > parent.GetAtkDis(target))
        {
            state = AtkState.non;
            return;
        }

        if (GameConst.CAMP_ATK[(int)target.camp, (int)parent.camp] == 0)
        {
            if (target.GetObjType() == InGameBaseObj.enObjType.equip)
            {
                InGameBaseEquip equip = (InGameBaseEquip)target;

                parent.StopAction();

                EquipData e = EquipSystem.GetInstance().RandEquipProperty(equip);
                InGameManager.GetInstance().inGamePlayerManager.AddEquip(e);

                MonoBehaviour.Destroy(equip.gameObject);
            }
            return;
        }

        parent.SetAnimatorState(parent.GetAtkAnimator(), parent.GetAtkSpeed());
        atkTime = 0;

        Vector3 v = (target.transform.position - parent.transform.position).normalized;

        parent.transform.forward = v;
    }
Esempio n. 9
0
    public void ReviveSync()
    {
        if (icon != null)
        {
            icon.gameObject.SetActive(true);
        }
        ChampHP.BasicSetting();
        SoundManager.instance.ChampSound(SoundManager.instance.Champion_Respawn);
        isDead = false;
        myChampionData.totalstat.Hp = myChampionData.totalstat.MaxHp;
        myChampionData.totalstat.Mp = myChampionData.totalstat.MaxMp;

        InGameManager inGameManager = GameObject.FindGameObjectWithTag("InGameManager").GetComponent <InGameManager>();

        if (Team.Equals("Blue"))
        {
            transform.position = inGameManager.BluePos;
        }
        else
        {
            transform.position = inGameManager.RedPos;
        }

        var myAstarTarget = transform.parent.Find("PlayerA*Target");

        if (myAstarTarget != null)
        {
            myAstarTarget.position = new Vector3(transform.position.x, myAstarTarget.localPosition.y, transform.position.z);
        }

        myChampionAnimation.AnimationAllOff();
    }
Esempio n. 10
0
    public virtual void StartAction(InGameBaseObj target, Vector3 targetPos, int dis)
    {
        astarDis = dis;
        Vector3 _targetMapPos = GameCommon.GetMapPos(targetPos);

        if (_targetMapPos == targetMapPos)
        {
            return;
        }

        Vector2        startPos = GameCommon.GetMapPos(parent.transform.position);
        MazeMapManager gameMap  = InGameManager.GetInstance().inGameLevelManager.gameMap;
        List <Vector2> _path    = astar.StratAStar(
            gameMap.astarArray,
            startPos,
            GameCommon.GetMapPos(targetPos),
            dis);

        if (_path.Count <= 0)
        {
            return;
        }
        HandlePath(startPos, _path);
        path = _path;

        isaction       = true;
        this.target    = target;
        this.targetPos = targetPos;
        targetMapPos   = _targetMapPos;
        atkTime        = 0;
        state          = ActionState.move;
    }
Esempio n. 11
0
    void AddStepUpdate()
    {
        lastAddTime += Time.deltaTime;
        if (lastAddTime < addTime)
        {
            return;
        }

        int count = steps.Count - 1;

        for (int i = count; i >= 0; i--)
        {
            if (steps[i] == null)
            {
                steps.RemoveAt(i);
            }
        }

        if (steps.Count >= maxCount)
        {
            return;
        }

        Rect gamerect = InGameManager.GetInstance().GetGameRect();

        float y    = InGameManager.GetInstance().role.transform.position.y + 2;
        float rand = Random.Range(0f, gamerect.y + gamerect.height - y - 2);

        InGameBaseObj obj = AddItem("InGameStep", y + rand);

        steps.Add(obj);

        lastAddTime = 0;
    }
Esempio n. 12
0
    public void TouchMove(Vector3 pos)
    {
        float rate = -(pos.x - Screen.width / 2) / 300f;

        if (rate > 1.5f)
        {
            rate = 1.5f;
        }
        if (rate < -1.5f)
        {
            rate = -1.5f;
        }

        float rotate = rate * 45;

        InGameRole role = InGameManager.GetInstance().role;

        for (int i = 0; i < objList.Count; i++)
        {
            InGameBaseObj obj = objList[i];
            if (obj == null || obj.IsDie())
            {
                continue;
            }

            float disrate = Mathf.Abs(role.transform.position.z - obj.transform.position.z) / (GameConst.GAME_STEP_INTERVAL * 3);

            disrate = 1 - Mathf.Min(disrate, 1f);

            obj.transform.rotation = Quaternion.Euler(new Vector3(0, 0, rotate * disrate));
        }
    }
    public override void Update()
    {
        base.Update();

        addTime     -= Time.deltaTime;
        addItemTime -= Time.deltaTime;
        if (addTime > 0)
        {
            return;
        }

        addTime = Random.Range(1f, 2f);


        BaseObject obj = InGameManager.GetInstance().inGameObjectManager.AddObj(BaseObject.enObjId.enemy_1);

        obj.transform.position = new Vector3(-3f + Random.Range(0, 6f), 0, 13);
        //60010013
        (new EventCreateEffect(60010013, null, obj.transform.position, 0.8f)).Send();
        if (addItemTime < 0)
        {
            obj.AddItem((BaseObject.enObjId)ConfigManager.confMapObjectManager.GetRandomObjByType((int)BaseObject.enObjType.item).objid);
            addItemTime = Random.Range(5f, 15f);

            //特效 60010016
            (new EventCreateEffect(60010016, obj.gameObject, obj.transform.position, -1f)).Send();
        }
    }
Esempio n. 14
0
    public static InGameBaseBuff CreateBuff(InGameBaseItem item)
    {
        InGameBaseBuff ret = null;

        switch ((BaseObject.enObjId)item.conf.objid)
        {
        case BaseObject.enObjId.addbullet:
            ret = new InGameBuffAddBullet();
            break;

        case BaseObject.enObjId.fastforward:
            ret = new InGameBuffFast();
            break;

        default:
            break;
        }

        if (ret != null)
        {
            ret.Init();
            ret.obj = item;
            InGameManager.GetInstance().inGamePlayerManager.AddBuff(ret);
        }

        return(ret);
    }
Esempio n. 15
0
    public override void HandleEvent(EventData resp)
    {
        if (InGameManager.GetInstance().gameState != enGameState.playing)
        {
            return;
        }
        switch (resp.eid)
        {
        case EventID.EVENT_TOUCH_DOWN:
            EventTouch eve = (EventTouch)resp;
            //TouchToPlane(eve.pos);
            //Fire(GameCommon.ScreenPositionToWorld(eve.pos));
            Vector3 pos = GameCommon.ScreenPositionToWorld(InGameManager.GetInstance().gamecamera, eve.pos);

            if (pos.x > 0)
            {
                KillObj();
            }
            else
            {
                if (GetMyState() == GameObjState.red)
                {
                    return;
                }
                SetState(GetMyState() == GameObjState.black ? GameObjState.white:GameObjState.black);
            }

            break;
        }
    }
Esempio n. 16
0
 protected virtual void Start()
 {
     if (InGameManager.IsInGameScene())
     {
         ActivateCheck();
     }
 }
Esempio n. 17
0
 protected virtual void OnEnable()
 {
     if (InGameManager.IsInGameScene())
     {
         Teleport(new Position((int)Mathf.Round(transform.position.x), (int)Mathf.Round(transform.position.y)));
     }
 }
Esempio n. 18
0
 private void OnLevelWasLoaded(int level)
 {
     if (SceneManager.GetSceneByBuildIndex(level).name.Equals("InGame"))
     {
         inGameManager = GameObject.FindGameObjectWithTag("InGameManager").GetComponent <InGameManager>();
     }
 }
Esempio n. 19
0
    public override void Update()
    {
        base.Update();

        List <InGameBaseObj> objlist = InGameManager.GetInstance().inGameLevelManager.objList;

        for (int i = 0; i < objlist.Count; i++)
        {
            if ("InGameStep" != objlist[i].itemid)
            {
                continue;
            }
            Vector3 objpos  = objlist[i].transform.position;
            Vector3 rolepos = InGameManager.GetInstance().role.transform.position;
            float   dis     = Vector3.Distance(objpos, rolepos);
            if (dis < maxMagnetDis)
            {
                float   speed = (1 - dis / maxMagnetDis) * maxMagnetSpeed * Time.deltaTime;
                Vector3 v3dis = Vector3.Normalize(rolepos - objpos);

                v3dis *= speed;

                float speeddis = Vector3.Distance(v3dis, Vector3.zero);
                if (speeddis > dis)
                {
                    v3dis *= (dis / speeddis);
                }

                objlist[i].transform.position += v3dis;
            }
        }
    }
Esempio n. 20
0
    public void RunCheck()
    {
        if (inGameManager == null && SceneManager.GetActiveScene().name.Equals("InGame"))
        {
            inGameManager = GameObject.FindGameObjectWithTag("InGameManager").GetComponent <InGameManager>();
        }

        // 시작하거나 부활하면 Run을 끔
        if (Vector3.Distance(target.position, startPos) < 0.1f)
        {
            animator.SetBool("Run", false);
            LoadCheckRPC("Run", false);
        }
        // 목표와 챔피언 사이의 거리가 일정수치보다 작아도 멈춤(도착했다고 생각)
        // 디버그해보니까 x,z는 거의 일치하고 y가 0.5차이나서 0.5 살짝넘게 차이남
        else if (Vector3.Distance(target.position, transform.position) < 0.51f)
        {
            animator.SetBool("Run", false);
            LoadCheckRPC("Run", false);
        }
        // 그보다 멀경우에는 camMove 상태일때만 뛰기(공격할때 false됨)
        else
        {
            if (myAIPath.canMove && !myAIPath.reachedDestination && !myChampAtk.isStun && !myChampData.isRecallStart)
            {
                animator.SetBool("Run", true);
                LoadCheckRPC("Run", true);
            }
            else
            {
                animator.SetBool("Run", false);
                LoadCheckRPC("Run", false);
            }
        }
    }
Esempio n. 21
0
    // Update is called once per frame
    public override void ObjUpdate()
    {
        base.ObjUpdate();

        if (IsDie())
        {
            return;
        }

        //transform.position -= new Vector3(0, Time.deltaTime*InGameManager.GetInstance().gameSpeed, 0);

        if (transform.position.y < InGameManager.GetInstance().GetGameRect().y + transform.localScale.y / 2)
        {
            SetDie();
            //InGameManager.GetInstance().GameOver();
        }

        ActionUpdate();

        if (showActionTime >= showActionMaxTime)
        {
            return;
        }
        showActionTime += Time.deltaTime;
        float val   = ac.Evaluate(Mathf.Min(showActionTime / showActionMaxTime, 1f));
        float scale = baseScale * val;

        transform.localScale = new Vector3(scale, scale, 1f);
    }
Esempio n. 22
0
    private void Awake()
    {
        ingameManager      = GameObject.FindGameObjectWithTag("InGameManager").GetComponent <InGameManager>();
        mesh               = GetComponentInChildren <SkinnedMeshRenderer>();
        fog                = GetComponent <FogOfWarEntity>();
        minHP              = transform.GetComponent <MinionHP>();
        TheAIDest          = gameObject.GetComponent <AIDestinationSetter>();
        minAtk             = transform.GetComponentInChildren <MinionAtk>();
        Audio              = GetComponentInChildren <AudioSource>();
        Audio.minDistance  = 1.0f;
        Audio.maxDistance  = 10.0f;
        Audio.volume       = 1f;
        Audio.spatialBlend = 0.5f;
        Audio.rolloffMode  = AudioRolloffMode.Linear;
        if (minAtk == null)
        {
            print("minatk is null");
        }
        TheAIPath = gameObject.GetComponent <AIPath>();

        if (!cursor)
        {
            cursor = GameObject.FindGameObjectWithTag("MouseCursor").GetComponent <AOSMouseCursor>();
        }
    }
Esempio n. 23
0
    void Update()
    {
        System.TimeSpan t = System.TimeSpan.FromSeconds(InGameManager.Instance.GameTime);
        TimeText.text = string.Format("{0:D2}:{1:D2}", t.Minutes, t.Seconds);

        RedKills.text  = "" + InGameManager.GetTeamKills(0);
        BlueKills.text = "" + InGameManager.GetTeamKills(1);

        //* Index should always be zero*//

        PlayerScore.text = string.Format("{0}/{1}/{2}",
                                         CurrentPlayer.Kills,
                                         CurrentPlayer.Deaths,
                                         CurrentPlayer.Assist);
        PlayerMinionScore.text = CurrentPlayer.MinionScore.ToString();


        PlayerHealth.text   = CurrentPlayer.Health.ToString();
        PlayerResource.text = CurrentPlayer.Resource.ToString();
        PlayerLevel.text    = CurrentPlayer.Level.ToString();
        PlayerGold.text     = CurrentPlayer.Gold.ToString();

        PlayerHealthRegen.text   = CurrentPlayer.Stats[GameConsts.STAT_HEALTH_REGEN].Curr.ToString();
        PlayerResourceRegen.text = CurrentPlayer.Stats[GameConsts.STAT_RESOURCE_REGEN].Curr.ToString();


        PlayerHealthImage.fillAmount   = CurrentPlayer.Health.Percent(false);
        PlayerResourceImage.fillAmount = CurrentPlayer.Resource.Percent(false);
        PlayerXP.fillAmount            = CurrentPlayer.Level.Percent(true);
    }
    public void SetTutorial(bool tutorialState)
    {
        _tutorialTextAnimator.SetBool("Fade", tutorialState);

        foreach (GameObject tutorialElement in _tutorialElements)
        {
            if (tutorialState)
            {
                StartCoroutine(InGameManager.SetFade(InGameManager.FadeOperation.In, tutorialElement));
            }
            else
            {
                StartCoroutine(InGameManager.SetFade(InGameManager.FadeOperation.Out, tutorialElement));
            }
        }
        if (tutorialState)
        {
            StartCoroutine(InGameManager.SetFade(InGameManager.FadeOperation.In, _acceptButton));
            StartCoroutine(_acceptButton.GetComponent <ButtonController>().SetInteractAtAble());
        }
        else
        {
            StartCoroutine(InGameManager.SetFade(InGameManager.FadeOperation.Out, _acceptButton));
        }
    }
Esempio n. 25
0
 private void CheckIfGameOver()
 {
     if (_stamina <= 0)
     {
         StartCoroutine(InGameManager.GetInstance().GameOver());
     }
 }
Esempio n. 26
0
    private void Start()
    {
        instance   = this;
        gamecamera = Camera.main;

        rapidBlurEffectManager = gamecamera.gameObject.AddComponent <RapidBlurEffectManager>();


        Vector3 screenLeftDown = new Vector3(0, 0, 0);
        Vector3 screenRightTop = new Vector3(Screen.width, Screen.height, 0);

        Vector3 gameLeftDown = GameCommon.ScreenPositionToWorld(gamecamera, screenLeftDown);
        Vector3 gameRightTop = GameCommon.ScreenPositionToWorld(gamecamera, screenRightTop);

        gameRect = new Rect(gameLeftDown, gameRightTop - gameLeftDown);

        gameState = enGameState.ready;

        if (UserDataManager.selLevel == null)
        {
            InitGame();
        }
        else
        {
            StartCoroutine(ReadConfigFile(UserDataManager.selLevel.file_path));
        }
        //
    }
Esempio n. 27
0
    // Update is called once per frame
    public void JumpUpdate()
    {
        if (!isStart)
        {
            return;
        }

        moveTime += Time.deltaTime;

        if (!isfull)
        {
            if (moveTime > maxTime)
            {
                moveTime = maxTime;
                isfull   = true;
            }
        }
        else if (!isfinished)
        {
            isfinished = true;
            if (InGameManager.GetInstance().role.JumpFinished())
            {
                return;
            }
        }

        float   rate = moveTime / maxTime;
        Vector3 pos  = startPos + (targetPos - startPos) * (rate);

        pos.y = JumpFormula(distance * rate, distance, distance * 0.3f, 0);
        this.transform.position = pos;
    }
Esempio n. 28
0
 void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
Esempio n. 29
0
 private void OnDestroy()
 {
     instance = null;
     if (touchManager != null)
     {
         touchManager.Destroy();
     }
     if (inGameObjectManager != null)
     {
         inGameObjectManager.Destroy();
     }
     if (inGamePlayerManager != null)
     {
         inGamePlayerManager.Destroy();
     }
     if (inGameLevelManager != null)
     {
         inGameLevelManager.Destroy();
     }
     if (inGameMapManager != null)
     {
         inGameMapManager.Destroy();
     }
     if (gameEffectManager != null)
     {
         gameEffectManager.Destroy();
     }
 }
Esempio n. 30
0
    protected override Vector3 AttemptMove(Layer2D layer, Direction dir)
    {
        var move = base.AttemptMove(layer, dir);

        // スタミナを減らす
        _stamina--;
        InGameManager.GetInstance().staminaText.text = "Stamina: " + Stamina;

        CheckIfGameOver();

        // ゴールがある場合リロード
        if (InGameManager.GetInstance().GoalCheck(ChipUtil.GetChipPos(new Vector2(move.x, move.y))))
        {
            // 遅延してリスタート
            Restart();

            // プレイヤーを一度無効
            enabled = false;
        }

        // プレイヤーのターンを終了する
        InGameManager.GetInstance().playersTurn = false;

        return(move);
    }
Esempio n. 31
0
 void Start()
 {
     manager = FindObjectOfType<InGameManager>();
     zombieHealth = 50;
 }