Exemplo n.º 1
0
    public override void HandleEvent(EventData resp)
    {
        base.HandleEvent(resp);
        switch (resp.eid)
        {
        case EventID.EVENT_GAME_CHARACTER_BORN:
            InGameBaseCharacter bornobj = (InGameBaseCharacter)resp.sUserData[0];
            EnemyInfo           info    = new EnemyInfo();
            info.character = bornobj;
            enemyInfoList.Add(info);
            break;

        case EventID.EVENT_GAME_CHARACTER_DIE:
            InGameBaseCharacter dieobj = (InGameBaseCharacter)resp.sUserData[0];

            for (int i = 0; i < enemyInfoList.Count; i++)
            {
                if (enemyInfoList[i].character.instanceId == dieobj.instanceId)
                {
                    Vector2 mapPos = GameCommon.GetMapPos(dieobj.transform.position);

                    SetPixel((int)mapPos.x, (int)mapPos.y, dataArray[(int)mapPos.x, (int)mapPos.y]);
                    enemyInfoList.RemoveAt(i);
                    return;
                }
            }

            break;
        }
    }
Exemplo n.º 2
0
    public override void Update()
    {
        for (int i = 0; i < enemyPoints.Count; i++)
        {
            enemyPoints[i].ObjUpdate();
        }
        for (int i = enemyList.Count - 1; i >= 0; i--)
        {
            if (enemyList[i] == null)
            {
                enemyList.RemoveAt(i);
            }
        }
        List <CharacterConf> roleList = ConfigManager.characterConfManager.dicByType[(int)CharacterConf.enCharacterType.enemy];

        while (enemyList.Count < 5)
        {
            //InGameBaseCharacter enemy = InGameManager.GetInstance().inGameObjManager.AddObj(roleList[Random.Range(0, roleList.Count)].id, enMSCamp.en_camp_enemy) as InGameBaseCharacter;
            InGameBaseCharacter enemy = InGameManager.GetInstance().inGameObjManager.AddObj(100008, enMSCamp.en_camp_enemy) as InGameBaseCharacter;
            //100011
            enemy.AddAI();

            Vector3 pos = InGameManager.GetInstance().inGameLevelManager.gameMap.GetRandomWay();
            enemy.transform.position = GameCommon.GetWorldPos(pos);
            enemy.SetZPos();

            enemyList.Add(enemy);
        }
    }
Exemplo n.º 3
0
    //死亡
    public override void Die()
    {
        actionManager.Destory();

        //InGameManager.GetInstance().inGameUIManager.DelRole(this.instanceId);
        //base.Die();
        SetAnimatorState(AnimatorState.Dead, 1);

        if (camp == enMSCamp.en_camp_enemy)
        {
            if (killMe.GetObjType() == enObjType.character)
            {
                //爆装备
                InGameBaseCharacter source = (InGameBaseCharacter)killMe;
                if (UnityEngine.Random.Range(0, 100) < conf.outodds)
                {
                    EquipSystem.GetInstance().OutEquip(gameObject, level,
                                                       source.propertys.GetProperty(enCharacterProperty.equipdrop) +
                                                       this.conf.equipdrop);
                }
                EventData.CreateEvent(EventID.EVENT_DATA_KILLENEMY).AddData(source, this).Send();
            }
        }

        transform.GetComponent <BoxCollider>().enabled    = false;
        transform.GetComponent <SphereCollider>().enabled = false;
        Invoke("Delself", 3);
    }
Exemplo n.º 4
0
    bool HitGameObj(InGameBaseObj baseobj)
    {
        if (baseobj.instanceId == this.instanceId)
        {
            return(false);
        }
        if (baseobj.GetObjType() != enObjType.character)
        {
            return(false);
        }
        if (!source.IsEnemy(baseobj))
        {
            return(false);
        }

        InGameBaseCharacter character = (InGameBaseCharacter)baseobj;


        character.Hurt(source,
                       source.GetAtkForce(),
                       source.propertys.GetProperty(enCharacterProperty.comborate),
                       source.propertys.GetProperty(enCharacterProperty.comboval),
                       false);
        Debug.Log(baseobj.gameObject.name);
        SetDie(true);

        return(true);
    }
Exemplo n.º 5
0
    public override void HandleEvent(EventData resp)
    {
        switch (resp.eid)
        {
        case EventID.EVENT_UI_INITMAPTEXTURE:
            Texture2D texture = resp.sUserData[0] as Texture2D;

            uitexture.mainTexture = texture;

            uitexture.width  = texture.width * mapScale;
            uitexture.height = texture.height * mapScale;

            break;

        case EventID.EVENT_DATA_CHANGELIFE:
            InGameBaseCharacter obj = resp.sUserData[0] as InGameBaseCharacter;
            if (InGameManager.GetInstance().inGamePlayerManager.GetRole().instanceId == obj.instanceId)
            {
                SetLife(obj);
            }
            break;

        case EventID.EVENT_GAME_INITROLE:
            InGameBaseCharacter role = resp.sUserData[0] as InGameBaseCharacter;
            SetLife(role);
            SetExp(role.GetData());
            break;

        case EventID.EVENT_DATA_CHANGEEXP:
            RoleData roledata = resp.sUserData[0] as RoleData;
            SetExp(roledata);
            break;
        }
    }
Exemplo n.º 6
0
    void SetLife(InGameBaseCharacter role)
    {
        float irmaxval = role.propertys.propertyValues[(int)enCharacterProperty.life];

        this.lifeTargetVal = role.life / irmaxval;
        lifeLabel.text     = role.life + "/" + irmaxval;
    }
Exemplo n.º 7
0
    public override void HandleEvent(EventData resp)
    {
        if (IsDie())
        {
            return;
        }
        base.HandleEvent(resp);

        switch (resp.eid)
        {
        case EventID.EVENT_GAME_CHARACTER_HURT:
            if (actionManager.IsAction())
            {
                return;
            }
            InGameBaseCharacter target = (InGameBaseCharacter)resp.sUserData[1];
            InGameBaseCharacter source = (InGameBaseCharacter)resp.sUserData[0];

            if (!this.IsEnemy(source))
            {
                return;
            }

            float dis = Vector2.Distance(target.transform.position, this.transform.position);

            if (dis < 4)
            {
                this.StartAtk((InGameBaseCharacter)resp.sUserData[0]);
            }

            break;
        }
    }
 public void AddRole(InGameBaseCharacter role)
 {
     if (infoList.ContainsKey(role.instanceId))
     {
         return;
     }
     CreateInfo(role);
 }
    void CreateInfo(InGameBaseCharacter role)
    {
        GameObject roleGo = NGUITools.AddChild(playerInfo.gameObject, playerInfoUnit);

        InGameUIPlayerInfoUnit unit = roleGo.GetComponent <InGameUIPlayerInfoUnit>();

        unit.Init(role);
        infoList.Add(role.instanceId, unit);
    }
Exemplo n.º 10
0
    public static BaseSkill CreateSkill(
        int skillid,
        InGameBaseCharacter source,
        InGameBaseCharacter target)
    {
        BaseSkill skill = InGameManager.GetInstance().inGameObjManager.AddSkill(skillid, source.camp) as BaseSkill;

        skill.SkillInit(source, target);
        return(skill);
    }
Exemplo n.º 11
0
    public void Refresh()
    {
        InGameBaseCharacter role = InGameManager.GetInstance().inGamePlayerManager.GetRole();

        desLabel.text = string.Format(conf.boardDes, role.propertys.propertyValues[conf.id].ToString("f2"));

        if (addBtn != null && role.GetData().levelupPoint > 0)
        {
            GameUIEventListener.Get(addBtn).onClick = AddBtnCB;
        }
    }
Exemplo n.º 12
0
    InGameBaseCharacter AddObj(int id, Vector2 pos)
    {
        InGameBaseCharacter enemy = InGameManager.GetInstance().inGameObjManager.AddObj(id, enMSCamp.en_camp_enemy) as InGameBaseCharacter;

        enemyList.Add(enemy);
        enemy.SetIsElite(isElite);
        enemy.AddAI();

        enemy.transform.position = pos;
        enemy.SetZPos();
        return(enemy);
    }
Exemplo n.º 13
0
    public void CreateProperty(GameObject prefab, PropertyConf conf, InGameBaseCharacter role)
    {
        GameObject       obj  = NGUITools.AddChild(grid.gameObject, prefab);
        PropertyListItem item = obj.GetComponent <PropertyListItem>();

        if (conf != null)
        {
            item.Init(conf /*, role.propertys.propertyValues[conf.id]*/);
        }

        itemList.Add(item);
    }
Exemplo n.º 14
0
    public override void HandleEvent(EventData resp)
    {
        switch (resp.eid)
        {
        case EventID.EVENT_GAME_CHARACTER_BORN:

            InGameBaseCharacter bornobj = (InGameBaseCharacter)resp.sUserData[0];
            this.AddRole(bornobj);
            break;

        case EventID.EVENT_GAME_CHARACTER_DIE:
            InGameBaseCharacter dieobj = (InGameBaseCharacter)resp.sUserData[0];
            this.DelRole(dieobj.instanceId);
            break;
        }
    }
Exemplo n.º 15
0
 public void Init(InGameBaseCharacter role)
 {
     this.role = role;
     if (role.GetIsElite())
     {
         eliteNameLabel.gameObject.SetActive(true);
         nameLabel.gameObject.SetActive(false);
     }
     else
     {
         eliteNameLabel.gameObject.SetActive(false);
         nameLabel.gameObject.SetActive(true);
     }
     nameLabel.text      = role.charactername;
     eliteNameLabel.text = role.charactername;
 }
Exemplo n.º 16
0
    public override void SkillInit(InGameBaseCharacter source, InGameBaseCharacter target)
    {
        base.SkillInit(source, target);

        additionPos = new Vector3(0, source.boxSize.y / 2, 0);
        Vector3 sourcePos = source.transform.position + additionPos;
        Vector3 targetPos = target.transform.position + additionPos;

        moveVector         = (targetPos - sourcePos).normalized;
        moveVector.z       = 0;
        startPos           = sourcePos;
        transform.position = startPos;

        float angle = GameCommon.GetVecAngle(moveVector);

        transform.eulerAngles = new Vector3(0, 0, angle);
    }
Exemplo n.º 17
0
    // Use this for initialization
    void Start()
    {
        //初始化事件管理器
        EventManager em = gameObject.AddComponent <EventManager>();

        EventManager.Register(this,
                              EventID.EVENT_TOUCH_SWEEP,
                              EventID.EVENT_TOUCH_UP);



        GameObject obj = GameObject.Find("Girl1");

        girl1 = obj.transform.GetComponent <InGameBaseCharacter>();
        girl1.Init(1, 1, enMSCamp.en_camp_player);
        gameTouchController = new GameTouchController();
    }
Exemplo n.º 18
0
    public override void HandleEvent(EventData resp)
    {
        base.HandleEvent(resp);
        switch (resp.eid)
        {
        case EventID.EVENT_DATA_USE_LEVELUP_POINT:
            int roleid = int.Parse(resp.sUserData[0].ToString());
            int type   = int.Parse(resp.sUserData[1].ToString());
            UserDataManager.instance.UseLevelupProperty(roleid, type);
            break;

        case EventID.EVENT_DATA_KILLENEMY:
            InGameBaseCharacter source = (InGameBaseCharacter)resp.sUserData[0];
            InGameBaseCharacter target = (InGameBaseCharacter)resp.sUserData[1];

            UserDataManager.instance.AddExp(source.GetData().instanceid, target.level);
            break;
        }
    }
Exemplo n.º 19
0
    void RefreshUI()
    {
        Debug.Log("RefreshUI");
        for (int i = 0; i < itemList.Count; i++)
        {
            itemList[i].Refresh();
        }

        InGameBaseCharacter role = InGameManager.GetInstance().inGamePlayerManager.GetRole();

        //ADDPOING
        if (role.GetData().levelupPoint > 0)
        {
            this.addPointInfoObj.SetActive(true);
            this.addPointLabel.text = "+" + role.GetData().levelupPoint;
        }
        else
        {
            this.addPointInfoObj.SetActive(false);
        }
    }
Exemplo n.º 20
0
    public override void Init()
    {
        base.Init();


        EventManager.Register(this,
                              EventID.EVENT_GAME_TOUCH_GROUND,
                              EventID.EVENT_GAME_TOUCH_OBJ,
                              EventID.EVENT_UI_EQUIP,
                              EventID.EVENT_UI_DELEQUIP,
                              EventID.EVENT_UI_UNEQUIP,
                              EventID.EVENT_DATA_REFRESHPROPERTY);


        RoleData rd = UserDataManager.instance.GetChooseRoleData();

        role = InGameManager.GetInstance().inGameObjManager.AddObj(rd.roldid,enMSCamp.en_camp_player) as InGameBaseCharacter;
        role.SetData(rd);

        //InGameManager.GetInstance().GetManager<InGameObjManager>(InGameManager.enGameManager.InGameObjManager).AddObj(0);
        Vector3 startpos = InGameManager.GetInstance().inGameLevelManager.gameMap.GetStartPosition();

        role.transform.position = GameCommon.GetWorldPos(startpos);
        role.SetZPos();

        InGameManager.GetInstance().inGameCameraManager.SetTarget(role.gameObject);

        for (int i = 0; i < rd.choseEquipList.Count; i++)
        {
            if (rd.choseEquipList[i] == -1) continue;
            EquipData edata = UserDataManager.instance.GetEquip(rd.choseEquipList[i]);
            role.AddEquip(edata);
        }

        //UserDataManager.instance.AddLevelupPoint(role.GetData().instanceid,5);
        role.ResetAllProperty(true);
        EventData.CreateEvent(EventID.EVENT_GAME_INITROLE).AddData(role).Send();

    }
Exemplo n.º 21
0
    public void Init()
    {
        InGameBaseCharacter role = InGameManager.GetInstance().inGamePlayerManager.GetRole();

        nameLabel.text  = role.GetData().name;
        levelLabel.text = role.level + "";

        Dictionary <int, PropertyConf>         propertyMap     = ConfigManager.propertyConfManager.dataMap;
        Dictionary <int, List <PropertyConf> > mainPropertyMap = ConfigManager.propertyConfManager.mainDataMap;

        foreach (KeyValuePair <int, List <PropertyConf> > kv in mainPropertyMap)
        {
            if (kv.Key > 0)
            {
                CreateProperty(mainPropertyItem, propertyMap[kv.Key], role);
            }
            else if (kv.Key == -2)
            {
                CreateProperty(otherPropertyItem, null, role);
            }
            else
            {
                continue;
            }

            List <PropertyConf> list = kv.Value;
            for (int i = 0; i < list.Count; i++)
            {
                CreateProperty(propertyItem, list[i], role);
            }
        }

        RefreshUI();

        EventManager.Register(this,
                              EventID.EVENT_DATA_REFRESHPROPERTY);
    }
Exemplo n.º 22
0
 public void Init(InGameBaseCharacter character)
 {
     this.character = character;
 }
Exemplo n.º 23
0
 public override void Init(InGameBaseCharacter parent, Vector3 targetPos)
 {
     base.Init(parent, targetPos);
     state = AtkState.non;
 }
Exemplo n.º 24
0
 public virtual void SkillInit(InGameBaseCharacter source, InGameBaseCharacter target)
 {
     this.source = source;
     this.target = target;
 }
Exemplo n.º 25
0
    public virtual void Init(InGameBaseCharacter parent, Vector3 targetPos)
    {
        this.parent = parent;

        this.targetPos = targetPos;
    }
Exemplo n.º 26
0
    public void AddBtnCB(GameObject go)
    {
        InGameBaseCharacter role = InGameManager.GetInstance().inGamePlayerManager.GetRole();

        EventData.CreateEvent(EventID.EVENT_DATA_USE_LEVELUP_POINT).AddData(role.GetData().instanceid, conf.id).Send();
    }