zoukankan      html  css  js  c++  java
  • Cocos2d-x游戏开发_战斗算法

    我的战斗算法的核心代码

    private void aHitb(HeroBean a,HeroBean b){
    		///*自身状态(已经移到aHitBTeam那里)
    		//判断A能否出招或者受到伤害什么的
    		//*/
    		//if(this->checkStatus(a) == 1)
    		//	return;
    //		cout<<a->heroName<<"的回合"<<endl;
    		System.out.println(a.heroName + "的回合");
    		/*输出层
    		得到一个伤害值
    		*/
    		boolean isBaoji = this.isBaoji(a);
    		boolean isBig = this.isBig(a);
    		int damage = this.getDamageInfact(a,isBaoji,isBig);
    		Gong_Type damageType = this.getDamageType(a);
    		
    		
    		/*效果层
    		得到伤害附带效果
    		*/
    		Gongji_Effect_Bad isHasEffect = Gongji_Effect_Bad.normal;
    		if(isBig){
    			damageType = a.skill.juegongType;
    			isHasEffect = this.isHasEffect(a);
    		}
    //		cout<<"输出"<<damage<<"的伤害"<<"("<<damageType<<"属性)"<<endl;
    		System.out.println("输出"+damage +"的伤害("+damageType+")属性");
    //		cout<<b->heroName<<"的反应"<<endl;
    		System.out.println(b.heroName + "的反应");
    		/*计算层
    		计算A和B的攻防,得到真实伤害
    		*/
    		boolean isShanbi = this.isShanbi(b);
    		boolean isDidang = this.isDiDang(b);
    		boolean isUseless = this.isUseless(isShanbi,isDidang);
    		int realDamage = this.getRealDamage(damage,damageType,isUseless,b);
    //		cout<<b->heroName<<"受到"<<realDamage<<"点伤害"<<endl;
    		System.out.println("受到"+realDamage+"点伤害");
    		
    		
    		/*结果层刷新状态
    		刷新A和B
    		*/
    		this.refreshAStatus(a);
    		this.refreshBStatus(b,realDamage,isHasEffect,a.skill.effectDamage,a.skill.effectRound);
    
    	}
    

      

  • 相关阅读:
    ubuntu 下python安装及hello world
    mongodb数据库学习【安装及简单增删改查】
    samba服务器共享开发【windows下开发linux网站】
    系统架构一:snmp+mrtg服务器监控
    记.gitignore的一次惊心动魄
    第一章 引论 第二章 算法分析
    渗透测试实践指南(1)
    day7
    day5 io模型
    day4(带)
  • 原文地址:https://www.cnblogs.com/hezijian/p/3758188.html
Copyright © 2011-2022 走看看