コード例 #1
0
    public void attack(StarLord starLord)
    {
        GameObject scene = this.objs[0] as GameObject;
        GameObject caller = this.objs[1] as GameObject;
        GameObject targetObj = this.objs[2] as GameObject;

        starLord.skillAnimaEventCallback -= attack;

        if(targetObj == null)
        {

            return;
        }

        Character target = targetObj.GetComponent<Character>();

        if(target.getIsDead())
        {

            return;
        }

        Vector3 vc3 = targetObj.transform.position + new Vector3(0,70,0);

        //		if(target.model.transform.localScale.x > 0)
        //		{
        //			vc3 += new Vector3(50,0,0);
        //		}
        //		else
        //		{
        //			vc3 -= new Vector3(50,0,0);
        ////			damageEft.transform.localPosition =
        //		}
        Vector3 createPt;
        if(starLord.model.transform.localScale.x > 0)
        {
        //			print("right");
            createPt = starLord.transform.position + new Vector3(100, 113, 0);
        }
        else
        {
        //			print("left");
            createPt = starLord.transform.position + new Vector3(-100, 113,0);
        }
        createPt = new Vector3(createPt.x, createPt.y, 0);
        shootBullet(createPt, vc3);
    }
コード例 #2
0
    public void attack(StarLord starLord)
    {
        GameObject scene = this.objs[0] as GameObject;
        GameObject caller = this.objs[1] as GameObject;
        GameObject targetObj = this.objs[2] as GameObject;

        starLord.skillAnimaEventCallback -= attack;

        Vector3 createPt;
        if(starLord.model.transform.localScale.x > 0)
        {
        //			print("right");
            createPt = starLord.transform.position + new Vector3(100, 113, 0);
        }
        else
        {
        //			print("left");
            createPt = starLord.transform.position + new Vector3(-100, 113,0);
        }
        createPt = new Vector3(createPt.x, createPt.y, 0);

        ArrayList enemyList = new ArrayList(EnemyMgr.enemyHash.Values);

        Vector3 vc3 = Vector3.one;
        foreach(Enemy enemy in enemyList)
        {
            if(enemy.isDead)
            {
                continue;
            }
            vc3 = enemy.transform.position + new Vector3(0,70,0);

            shootBullet(createPt, vc3, enemy.gameObject);
        }

        starLord.skillAnimaEventCallback += showSmokeEft;
    }
コード例 #3
0
ファイル: Skill_STARLORD1.cs プロジェクト: rogeryuan99/Hello
    public override IEnumerator Cast(ArrayList objs)
    {
        GameObject caller = objs[1] as GameObject;
        GameObject target = objs[2] as GameObject;

        fireBulletTarget = target;

        Hero heroDoc = caller.GetComponent<Hero>();
        starlord = caller.GetComponent<StarLord>();

        if (heroDoc.model.transform.position.x > target.transform.position.x)
        {
            heroDoc.model.transform.localScale = new Vector3 (-heroDoc.scaleSize.x, heroDoc.scaleSize.y, 1);
        }
        else
        {
            heroDoc.model.transform.localScale = new Vector3 (heroDoc.scaleSize.x, heroDoc.scaleSize.y, 1);
        }

        heroDoc.castSkill("SkillA");
        yield return new WaitForSeconds(.80f);
        MusicManager.playEffectMusic("SFX_StarLord_Fire_Blast_1a");
        //		yield return new WaitForSeconds(.01f);
        //		MusicManager.playEffectMusic("SFX_StarLord_Fire_Blast_1a");
        yield return new WaitForSeconds(.3f);

        SkillDef skillDef =  SkillLib.instance.getSkillDefBySkillID("STARLORD1");

        Hashtable tempNumber = skillDef.activeEffectTable;
        float tempAtkPer = ((Effect)tempNumber["atk_PHY"]).num;
        fireBlastDamage = target.GetComponent<Character>().getSkillDamageValue(heroDoc.realAtk, tempAtkPer);
        time = (int)skillDef.skillDurationTime;

        createBullets(objs);
        createSmoke(objs);
    }
コード例 #4
0
    public void showSmokeEft(StarLord starLord)
    {
        starLord.skillAnimaEventCallback -= showSmokeEft;

        if(smokeEftPrb == null)
        {
            smokeEftPrb = Resources.Load("eft/StarLord/SkillEft_STARLORD15A_Smoke") as GameObject;

        }

        GameObject smokeEft1 = Instantiate(smokeEftPrb) as GameObject;
        GameObject smokeEft2 = Instantiate(smokeEftPrb) as GameObject;

        if(starLord.model.transform.localScale.x > 0)
        {
            smokeEft1.transform.position = starLord.transform.position + new Vector3(50, 131, 0);
            smokeEft2.transform.position = starLord.transform.position + new Vector3(0, 131, 0);
        }
        else
        {
            smokeEft1.transform.localScale = new Vector3(-1, 1, 0);
            smokeEft2.transform.localScale = new Vector3(-1, 1, 0);
            smokeEft1.transform.position = starLord.transform.position + new Vector3(-50, 131, 0);
            smokeEft2.transform.position = starLord.transform.position + new Vector3(0, 131, 0);
        }
    }