题目描述

回合顺序
初始化:若无特殊说明,初始每人1命0牌,状态为空
1:出牌阶段1:打出你本回合的牌
2:出牌阶段2:对方你本回合的牌
3:使用阶段:双方使用牌拥有的词条的效果
4:伤害判断:若有人打出攻击牌,则判断攻击能否造成伤害
5:游戏结束判断:下面
6:以上在输入中以行为一回合,即每一行都要执行这些步骤
7:重复执行知道游戏结束

游戏结束条件

若你违反了以下的游戏规则之一,你输掉比赛
1:若你的状态为挂,且你这一回合打出上挂  
2:若你的状态不为挂,且你这一回合打出下挂
3:若你的牌数出现负数即你买了你当前无法购买的道具或攻击,你输掉比赛
4:你连续哈哈三次(会讲)
 
任何时刻进行判断
1:如果某人命数<=0,出局
2:如果所有人命数>=3,平局
3:如果所有人状态为挂,平局
解释一下3:就是A、B一起上挂

部分名词解释,方便做题者看懂后续题目

	前台:自身当前(这一个回合打出的)的牌
	后台:自身已打出的牌的存放点/后台的自身的牌
	这两个极其重要,不理解就看不懂后面的 

	词条(一张牌只能激活一次)
	免疫:无视特定伤害
	防御:令自身本回合获得抵消(前后台不可同时触发)
		注:所有的盾用于防御时盾不可同时触发
		伤害:该牌前台时,对任一玩家造成对应伤害			
			伤害大小(优先级递增)
  
  	黑洞
	本回合后台不可抵消
	掠夺任一玩家的前台为自己的前台(仅免疫,防御,哈哈可激活(把ta的东西放入你自己的前台))
		在多人游戏中:同一前台被多玩家掠夺,直接吸裂,即所有出的和吸的都无法获得这个道具(当然所有样例都是双人对战) 
	蕉蕉(g4)、暗黑蕉蕉(g5):
	命数:
  词条触发优先级(递增)
	黑洞
	蕉蕉
	伤害,群体伤害
	哈哈
	免疫
	抵消

伤害判定

伤害判定 
	G永小于1条命永小于出局伤害
	[解释]最大的G级伤害只会扣一条命
	
	 
	(0.5G)伤害是构造所有高级伤害的基础,而(0.5G)伤害之间略有差异:
	重拳>戳
	[例] 若A打出重拳,B打出戳,B收到(0.5G)伤害(扣一个盾)
	元气斩>斩
	[例] 若A打出元气斩,B打出斩,B收到(0.5G)伤害(扣一个盾)
	暴击>0.5G的所有伤害 
	[例] 若A打出暴击,B打出除暴击外所有(0.5G)的伤害,B收到(0.5G)伤害(扣一个盾)
	
	
	同伤抵消:两边打出的伤害相同时,双方不会受到任何伤害
	[例] 若A打出(2G)伤害,B打出(2G)伤害,则双方最终不会受到伤害
	异伤覆盖:若AB打出伤害不同且AB均出的都是攻击,则伤害小的一方受到最终会受到对方的所有伤害;
	[例] 若A打出(8G)伤害,B打出(4G)伤害,则B最终会受到(8G)伤害
	最终伤害=max(该回合所受最大伤害-该回合抵消,1命)
	[方法] 伤害判定的伪代码 
	1:玩家受到伤害?(true:进入2)
	2:玩家的前台可以防御?(true:结束判定;false:进入3)
	3:伤害值为(x,建议用double),计算该玩家扣除后台(int(x/1.0))个钟和(int(x%1.0))个盾(进入4) 
	4:这位玩家有这么多钟、盾?(true:扣除相应的钟和盾,结束判定;false:进入5(不要扣除这些钟和盾))
	5:这位玩家有多于1条命?(true:扣一条命;false:玩家死亡)
	6:结束判定,扣除相应数据 
	[例] 若A打出(2G)伤害,B有1个钟,1个吃过的蕉蕉,则B最终会受到(1条命)伤害
	
	群体伤害(在双人游戏时没有任何作用)该牌前台时,对所有其他玩家造成伤害
	可能会被反弹,如果你的伤害一定,不管被多少人反弹,你只受到这个定值,不会增加 

J类:道具类特殊牌

	上挂j1:进入开挂状态
	下挂j2:结束开挂状态
	上挂、下挂与举报
		开挂状态
		持续时间:[上挂,下挂)
		可以通过j1上挂;j2下挂;j3举报
		状态为挂时免疫所有伤害
		同时能免费打出所有牌,但你打的牌可能被别人用黑洞吸走
		注:黑洞原价(两个玉),超级绝杀需要两个绝杀(这几种牌在后面)
	举报j3:无视挂的免疫,让所有状态为挂的玩家输掉比赛!
	哈哈j4:反弹小猪,中猪,斩,元气斩,暴击,重击,白洞,CSP-J,CSP-S的伤害(不能连续出三次,否则输掉比赛)
	有些道具类牌不属于J类,因为它在其他系中 

O类:基础物资

玉:用于合成大多攻击
防:免疫戳、斩、小电、小猪、CSP-J,制造护盾
闪:免疫戳、二戳、三戳、四戳、小电、中电、合成电系
甩剑:本回合后台不可抵消,即无视防具,用于制造狒狒、白洞