Ejemplo n.º 1
0
 public override void Attack()
 {
     gameObject.GetComponent <AIPath>().maxSpeed = 0f;
     target = StaticConnection.ReturnPlayerObject().transform.position;
     SpawnTarget();
     Invoke("Shoot", targetShootDelay);
 }
Ejemplo n.º 2
0
 private void FixedUpdate()
 {
     if (dashing)
     {
         playerRB.AddForce(StaticConnection.ReturnPlayerPos() + moveDirection.normalized * 10000 * dashForce * Time.fixedDeltaTime, ForceMode2D.Force);
     }
 }
Ejemplo n.º 3
0
    void PlayHitSound()
    {
        int    index = Random.Range(1, 6);
        string name  = "Cha_HitSound_" + index;

        StaticConnection.PlaySoundFromObj(gameObject, name);
    }
Ejemplo n.º 4
0
 public override void Death()
 {
     StaticConnection.PlaySoundFromObj(gameObject, "Obj_Destruction");
     Destroy(coll);
     gameObject.GetComponent <SpriteRenderer>().sortingOrder = 9;
     StaticConnection.ReturnAstarPath().Scan();
 }
Ejemplo n.º 5
0
    void Rotate()
    {
        Vector2 lookDir = StaticConnection.ReturnPlayerPos() - rb.position;
        float   angle   = Mathf.Atan2(lookDir.y, lookDir.x) * Mathf.Rad2Deg - 90f;

        rb.rotation = angle;
    }
Ejemplo n.º 6
0
        /// <summary>
        /// 初始化数据库
        /// </summary>
        public static void InitDB()
        {
            //if (_isInit)
            //{
            //    return;
            //}
            Type type = typeof(T);

            DataAccessLoader.AppendModelAssembly(type.Assembly);
            DataAccessLoader.InitConfig();
            _db = GetDB();

            Type baseType = typeof(BQLEntityTableHandle);

            PropertyInfo[] infos = type.GetProperties(BindingFlags.Public | BindingFlags.Static);
            foreach (PropertyInfo info in infos)
            {
                Type objType = info.PropertyType;
                if (!objType.IsSubclassOf(baseType))
                {
                    continue;
                }
                BQLEntityTableHandle handle = FastValueGetSet.GetGetMethodInfo(info.Name, type).Invoke(null, new object[] { }) as BQLEntityTableHandle;
                AddToDB(handle);
            }
            StaticConnection.ClearCacheOperate(_db);
#if DEBUG
            _db.SqlOutputer.OnOutputerCreate += new Buffalo.DB.MessageOutPuters.CreateOutputerHandle(SqlOutputer_OnOutputerCreate);
#endif
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 显示配置框
        /// </summary>
        /// <param name="curProject"></param>
        /// <param name="docView"></param>
        /// <param name="dalNamespace"></param>
        public static void ShowConfig(ClassDesignerInfo desinfo, string dalNamespace)
        {
            DBConfigInfo dbinfo = DBConfigInfo.LoadInfo(desinfo);

            using (FrmDBSetting frmSetting = new FrmDBSetting())
            {
                frmSetting._selectedClassDesigner = desinfo;
                if (dbinfo == null)
                {
                    dbinfo             = new DBConfigInfo();
                    dbinfo.DbName      = DBConfigInfo.GetDbName(desinfo);
                    dbinfo.SummaryShow = SummaryShowItem.All;
                    dbinfo.FileName    = DBConfigInfo.GetFileName(desinfo);
                }
                frmSetting.Info        = dbinfo;
                frmSetting.SummaryItem = dbinfo.SummaryShow;
                if (frmSetting.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
                if (string.IsNullOrEmpty(dbinfo.AppNamespace))
                {
                    dbinfo.AppNamespace = dalNamespace + "." + dbinfo.DbType;
                }

                dbinfo.SaveConfig(dbinfo.FileName);
                StaticConnection.ClearCacheOperate(dbinfo.DbName);
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 获取数据层基类
        /// </summary>
        /// <returns></returns>
        public DataAccessBase <T> GetBaseContext()
        {
            DataAccessBase <T> baseDal = new DataAccessBase <T>();

            baseDal.Oper = StaticConnection.GetDefaultOperate <T>();
            return(baseDal);
        }
Ejemplo n.º 9
0
 private void Update()
 {
     if (Input.GetKeyDown(KeyCode.R))
     {
         ult.ExecuteChanneling();
     }
     if (Input.GetKeyUp(KeyCode.R))
     {
         if (ult.IsCurrentlyChanneling())
         {
             ult.ExecuteChannelingStop();
         }
     }
     if (StaticConnection.ReturnPlayerObject().GetComponent <Player>().isStunned)
     {
         return;
     }
     if (Input.GetKeyDown(KeyCode.Space))
     {
         rageMode = !rageMode;
         PlayerFormLightDisplay();
         if (rageMode)
         {
             gameObject.GetComponent <Animator>().SetBool("Hate Mode", true);
             StaticConnection.PlaySoundFromObj(gameObject, "Cha_E_Change");
         }
         else
         {
             gameObject.GetComponent <Animator>().SetBool("Hate Mode", false);
             StaticConnection.PlaySoundFromObj(gameObject, "Cha_Q_Change");
         }
     }
     if (rageMode)
     {
         if (Input.GetMouseButtonDown(0))
         {
             abilities[0].Execute();
         }
         if (Input.GetMouseButtonDown(1))
         {
             abilities[1].Execute();
         }
     }
     else
     {
         if (Input.GetMouseButtonDown(0))
         {
             abilities[2].Execute();
         }
         if (Input.GetMouseButtonDown(1))
         {
             abilities[3].Execute();
         }
     }
     if (Input.GetKeyDown(KeyCode.LeftShift))
     {
         utilities[0].Execute();
     }
 }
Ejemplo n.º 10
0
 public override void DealDamage(Collider2D _entityToDamage)
 {
     base.DealDamage(_entityToDamage);
     if (_entityToDamage.GetComponent <Entity>() != null)
     {
         _entityToDamage.GetComponent <Entity>().GetStunned(stunDuration);
     }
     StaticConnection.PlaySoundFromObj(gameObject, "Ene_Tank_Damagedone");
 }
Ejemplo n.º 11
0
 public override void Death()
 {
     gameObject.GetComponent <SpriteRenderer>().sortingOrder = 9;
     foreach (Collider2D colls in coll)
     {
         Destroy(colls);
     }
     StaticConnection.ReturnAstarPath().Scan();
 }
Ejemplo n.º 12
0
 protected override void DoAbility()
 {
     base.DoAbility();
     SetDirection();
     //playerVelocity = playerRB.velocity;
     dashing = true;
     StaticConnection.PlaySoundFromObj(gameObject, "Cha_Shift_Dash");
     distance = dashDistance;
 }
Ejemplo n.º 13
0
 public override void ChangeHealth(bool isDamage, bool isMelee, float amount)
 {
     base.ChangeHealth(isDamage, isMelee, amount);
     if (isDamage && amount > 0)
     {
         StaticConnection.PlaySoundFromObj(gameObject, deathSound);
         DisplayHit();
     }
 }
Ejemplo n.º 14
0
 void Display()
 {
     if (health > 0)
     {
         StaticConnection.PlaySoundFromObj(gameObject, "Obj_Damage");
     }
     gameObject.GetComponent <SpriteRenderer>().sprite = sprites[counter];
     counter++;
 }
Ejemplo n.º 15
0
 /// <summary>
 /// 获取基础数据层
 /// </summary>
 /// <returns></returns>
 private DataAccessSetBase GetBaseDataAccess()
 {
     if (_dal == null)
     {
         EntityInfoHandle handle = EntityInfoManager.GetEntityHandle(CH.GetRealType(this));
         _dal      = new DataAccessSetBase(handle);
         _dal.Oper = StaticConnection.GetStaticOperate(handle.DBInfo);
     }
     return(_dal);
 }
Ejemplo n.º 16
0
 void Initalize()
 {
     gameObject.GetComponent <Pathfinding.AIDestinationSetter>().target = StaticConnection.ReturnPlayerObject().transform;
     speed         = gameObject.GetComponent <AIPath>().maxSpeed;
     attackPosX    = attackPos.transform.localPosition.x;
     rb            = gameObject.GetComponent <Rigidbody2D>();
     isKnockedBack = false;
     isSlowed      = false;
     currentColor  = gameObject.GetComponentInChildren <SpriteRenderer>().color;
 }
Ejemplo n.º 17
0
 /// <summary>
 /// 获取数据层(用作运行SQL)
 /// </summary>
 /// <returns></returns>
 public DataAccessSetBase GetDAL()
 {
     if (_dal == null)
     {
         EntityInfoHandle handle = EntityInfoManager.GetEntityHandle(typeof(T));
         _dal      = new DataAccessSetBase(handle);
         _dal.Oper = StaticConnection.GetStaticOperate(handle.DBInfo);
     }
     return(_dal);
 }
Ejemplo n.º 18
0
 private void Start()
 {
     if (StaticConnection.ReturnPlayerObject().GetComponent <Rigidbody2D>())
     {
         playerRB = StaticConnection.ReturnPlayerObject().GetComponent <Rigidbody2D>();
     }
     else
     {
         Debug.LogError("Couldn't find Rigidbody2D Component attached to the player - dash ability is disabled");
     }
 }
Ejemplo n.º 19
0
    public virtual void Attack()
    {
        Collider2D entityToDamage = Physics2D.OverlapCircle(attackPos.position, attackRange, whatIsEnemy);

        if (entityToDamage != null)
        {
            StaticConnection.PlaySoundFromObj(gameObject, dealingDamageSound);
            DealDamage(entityToDamage);
        }
        freezeSpriteRot = false;
    }
Ejemplo n.º 20
0
 private void Start()
 {
     cam = StaticConnection.GetMainCamera();
     if (gameObject.GetComponent <Rigidbody2D>() != null)
     {
         rb = gameObject.GetComponent <Rigidbody2D>();
     }
     else
     {
         Debug.LogError("No Rigidbody2D found on Player Object");
     }
 }
Ejemplo n.º 21
0
    void Shoot()
    {
        Collider2D entityToDamage = Physics2D.OverlapCircle(target, hitDiameter, whatIsEnemy);

        if (entityToDamage != null)
        {
            DealDamage(entityToDamage);
        }
        Destroy(sprite);
        StaticConnection.PlaySoundFromObj(gameObject, "Ene_Arti_DamageDone");
        gameObject.GetComponent <AIPath>().maxSpeed = speed;
    }
Ejemplo n.º 22
0
 private void Start()
 {
     timer        = cooldown;
     isChanneling = false;
     if (StaticConnection.ReturnPlayerObject())
     {
         player = StaticConnection.ReturnPlayerObject();
     }
     else
     {
         Debug.LogError("Acceptance ult script couldn't get return value from StaticConnection 'ReturnPlayerObject()'");
     }
 }
Ejemplo n.º 23
0
 void Spawn()
 {
     StaticConnection.PlaySoundFromObj(gameObject, spawnSound);
     for (int i = 0; i < enemyPrefabs.Length; i++)
     {
         for (int a = 0; a < spawnCount[i]; a++)
         {
             float      x        = Random.Range(spawnRangeX.x, spawnRangeX.y);
             float      y        = Random.Range(spawnRangeY.x, spawnRangeY.y);
             Vector2    spawnPos = new Vector2(x, y);
             GameObject spawnObj = Instantiate(enemyPrefabs[i], spawnPos, Quaternion.identity);
             spawnObj.transform.parent = gameObject.transform;
         }
     }
 }
Ejemplo n.º 24
0
 public override void Death()
 {
     base.Death();
     Collider2D[] colls = gameObject.GetComponents <Collider2D>();
     foreach (Collider2D coll in colls)
     {
         coll.enabled = false;
     }
     rb.SetRotation(0);
     rb.freezeRotation = true;
     DropObjectsOnDeath();
     anim.SetTrigger("Death");
     StaticConnection.PlaySoundFromObj(StaticConnection.ReturnAudioManagerObj(), deathSound);
     Destroy(gameObject, 0.3f);
 }
Ejemplo n.º 25
0
    public override void DoAbility()
    {
        base.DoAbility();
        //Vector3 rotation = attackPos.rotation.eulerAngles;
        Quaternion rotation = attackPos.rotation;

        rotation *= Quaternion.Euler(0, 0, 90);
        GameObject bullet = Instantiate(projectile, attackPos.position, rotation);

        bullet.transform.parent = gameObject.transform;
        Rigidbody2D bulletRB = bullet.GetComponent <Rigidbody2D>();

        bulletRB.AddForce(attackPos.up * projectileSpeed, ForceMode2D.Impulse);
        SetBulletStats(bullet);
        StaticConnection.PlaySoundFromObj(gameObject, "Cha_Q_Lk_Cast");
    }
Ejemplo n.º 26
0
    public override void DoAbility()
    {
        base.DoAbility();
        anim.SetTrigger("Atk");
        StaticConnection.PlaySoundFromObj(gameObject, "Cha_E_Lk");
        hitEnemiesCount = Physics2D.OverlapCollider(hitCollider, contactFilter, hitEnemies);

        for (int i = 0; i < hitEnemiesCount; i++)
        {
            if (hitEnemies[i] != null)
            {
                Entity currentTarget = hitEnemies[i].GetComponent <Entity>();
                if (currentTarget.ReturnHitBool())
                {
                    continue;
                }
                else
                {
                    currentTarget.SetHitBool(true);
                }
                currentTarget.ChangeHealth(true, true, damage);

                if (stun)
                {
                    currentTarget.GetStunned(stunDuration);
                }

                if (knockback)
                {
                    if (hitEnemies[i].GetComponent <Rigidbody2D>())
                    {
                        Rigidbody2D targetRB = hitEnemies[i].GetComponent <Rigidbody2D>();
                        currentTarget.GetComponent <CombatEnemy>().GetKnockedBack(knockbackStrength, knockBackDistance, targetRB.position - StaticConnection.ReturnPlayerPos());
                    }
                }
            }
        }
        for (int i = 0; i < hitEnemiesCount; i++)
        {
            if (hitEnemies[i].GetComponent <Entity>())
            {
                hitEnemies[i].GetComponent <Entity>().SetHitBool(false);
            }
            hitEnemies[i] = null;
        }
    }
Ejemplo n.º 27
0
 public override void DoAbility()
 {
     base.DoAbility();
     anim.SetTrigger("Atk");
     StaticConnection.PlaySoundFromObj(gameObject, "Cha_E_Rk");
     Collider2D[] entitiesToDamage = Physics2D.OverlapCircleAll(attackPos.position, attackRange, whatIsEnemies);
     for (int i = 0; i < entitiesToDamage.Length; i++)
     {
         if (entitiesToDamage[i] != null)
         {
             Entity currentTarget = entitiesToDamage[i].GetComponent <Entity>();
             if (currentTarget.ReturnHitBool())
             {
                 continue;
             }
             else
             {
                 currentTarget.SetHitBool(true);
             }
             currentTarget.ChangeHealth(true, true, damage);
             if (stun)
             {
                 currentTarget.GetStunned(stunDuration);
             }
             if (entitiesToDamage[i].GetComponent <Rigidbody2D>())
             {
                 Rigidbody2D targetRB = entitiesToDamage[i].GetComponent <Rigidbody2D>();
                 currentTarget.GetComponent <CombatEnemy>().GetKnockedBack(knockbackStrength, knockBackDistance, targetRB.position - StaticConnection.ReturnPlayerPos());
             }
         }
     }
     foreach (Collider2D coll in entitiesToDamage)
     {
         if (coll.GetComponent <Entity>())
         {
             coll.GetComponent <Entity>().SetHitBool(false);
         }
     }
 }
Ejemplo n.º 28
0
        public static DBConfigInfo GetDBConfigInfo(ClassDesignerInfo info, string dalNamespace)
        {
            DBConfigInfo dbinfo = DBConfigInfo.LoadInfo(info);

            if (dbinfo == null)
            {
                using (FrmDBSetting frmSetting = new FrmDBSetting())
                {
                    frmSetting.Info.DbName = DBConfigInfo.GetDbName(info);
                    if (frmSetting.ShowDialog() != DialogResult.OK)
                    {
                        return(null);
                    }
                    dbinfo = frmSetting.Info;

                    dbinfo.AppNamespace = dalNamespace + "." + dbinfo.DbType;
                    dbinfo.FileName     = DBConfigInfo.GetFileName(info);
                    dbinfo.SaveConfig(dbinfo.FileName);
                    StaticConnection.ClearCacheOperate(dbinfo.DbName);
                }
            }
            return(dbinfo);
        }
Ejemplo n.º 29
0
    private void OnCollisionEnter2D(Collision2D collision)
    {
        GameObject hitObj = collision.gameObject;

        if (whatsEnemy == (whatsEnemy | (1 << hitObj.layer)))
        {
            if (_stun && hitObj.GetComponent <CombatEnemy>())
            {
                hitObj.GetComponent <CombatEnemy>().GetStunned(_stunDuration);
            }
            hitObj.GetComponent <Entity>().ChangeHealth(true, false, damage);
        }
        if (isPlayerProjectile)
        {
            StaticConnection.PlaySoundFromObj(StaticConnection.ReturnPlayerObject(), "Cha_Q_Lk");
        }
        else
        {
            StaticConnection.PlaySoundFromObj(StaticConnection.ReturnAudioManagerObj(), "Ene_Range_DamageDone");
        }
        gameObject.GetComponent <SpriteRenderer>().enabled = false;
        Destroy(gameObject);
    }
Ejemplo n.º 30
0
    public override void DoAbility()
    {
        base.DoAbility();
        anim.SetTrigger("Atk");
        StaticConnection.PlaySoundFromObj(gameObject, "Cha_Q_Rk");
        int hitEnemiesCount = Physics2D.OverlapCollider(hitCollider, contactFilter, hitEnemies);

        for (int i = 0; i < hitEnemies.Length; i++)
        {
            if (hitEnemies[i] != null)
            {
                Entity currentTarget = hitEnemies[i].GetComponent <Entity>();
                if (currentTarget.ReturnHitBool())
                {
                    continue;
                }
                else
                {
                    currentTarget.SetHitBool(true);
                }
                currentTarget.ChangeHealth(true, false, damage);
                if (stun)
                {
                    currentTarget.GetStunned(stunDuration);
                }
            }
        }
        for (int i = 0; i < hitEnemiesCount; i++)
        {
            if (hitEnemies[i].GetComponent <Entity>())
            {
                hitEnemies[i].GetComponent <Entity>().SetHitBool(false);
            }
            hitEnemies[i] = null;
        }
    }