首页 / PHP / 一个php处理回合制PK过程的问题
一个php处理回合制PK过程的问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了一个php处理回合制PK过程的问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3158字,纯文字阅读大概需要5分钟。
内容图文
游戏中就是你打我一下,我打你一下,两边都打完进如下一轮,现在是这样的。
左边是进攻方,先打
------------左边
人物A,人物B,人物C
------------右边
敌人A
PK过程是
人物A ---->攻击: 敌人A
敌人A ---->攻击: 人物A (现在敌人攻击完了,左边没有攻击完)
人物B ---->攻击: 敌人A
人物C ---->攻击: 敌人A
==========到这里,一轮攻击就算完毕,进入下一轮PK===== 人物先手(即左边)
人物A ---->攻击: 敌人A
敌人A ---->攻击: 人物A (现在敌人攻击完了,左边没有攻击完)
人物B ---->攻击: 敌人A
人物C ---->攻击: 敌人A
.....
比如双方的人物是由数组组成的。
//人物
$humen = array(
1 => array(
'name'=>'人物A'
'is_attack'=>0,//表示本轮是否攻击过,到新一轮的时候就重置他
),
2 => array(
'name'=>'人物B',
'is_attack'=>0,
),
3 => array(
'name'=>'人物C',
'is_attack'=>0,
)
);
//敌人
$enemy= array(
1 => array(
'name'=>'敌人A',
'is_attack'=>0,
),
);
最后实形成这样一个过程
array(
launch => 'left',
attackor => 1, //人物A发起攻击
hurt => array(0 => array('beattackors' => 1), //敌人A被攻击 beattackors 对应地方的数组索引
)
),
1 => array(
launch => 'right',
attackor => 1, //敌人A发起攻击
hurt => array(0 => array('beattackors' => 1), //人物A被攻击 beattackors 对应地方的数组索引
)
),
2 => array(
launch => 'left',
attackor => 2, //人物B发起攻击
hurt => array(0 => array('beattackors' => 1), //敌人A被攻击 beattackors 对应地方的数组索引
)
), //到这里由于敌人已经攻击完了,但是本方还没有攻击完,继续left
3 => array(
launch => 'left',
attackor => 3, //人物C发起攻击
hurt => array(0 => array('beattackors' => 1), //攻击敌人A beattackors 对应地方的数组索引
)
)
);
PHP怎么实现这个PK过程呢。
回复内容:
游戏中就是你打我一下,我打你一下,两边都打完进如下一轮,现在是这样的。
左边是进攻方,先打
------------左边
人物A,人物B,人物C
------------右边
敌人A
PK过程是
人物A ---->攻击: 敌人A
敌人A ---->攻击: 人物A (现在敌人攻击完了,左边没有攻击完)
人物B ---->攻击: 敌人A
人物C ---->攻击: 敌人A
==========到这里,一轮攻击就算完毕,进入下一轮PK===== 人物先手(即左边)
人物A ---->攻击: 敌人A
敌人A ---->攻击: 人物A (现在敌人攻击完了,左边没有攻击完)
人物B ---->攻击: 敌人A
人物C ---->攻击: 敌人A
.....
比如双方的人物是由数组组成的。
//人物
$humen = array(
1 => array(
'name'=>'人物A'
'is_attack'=>0,//表示本轮是否攻击过,到新一轮的时候就重置他
),
2 => array(
'name'=>'人物B',
'is_attack'=>0,
),
3 => array(
'name'=>'人物C',
'is_attack'=>0,
)
);
//敌人
$enemy= array(
1 => array(
'name'=>'敌人A',
'is_attack'=>0,
),
);
最后实形成这样一个过程
array(
launch => 'left',
attackor => 1, //人物A发起攻击
hurt => array(0 => array('beattackors' => 1), //敌人A被攻击 beattackors 对应地方的数组索引
)
),
1 => array(
launch => 'right',
attackor => 1, //敌人A发起攻击
hurt => array(0 => array('beattackors' => 1), //人物A被攻击 beattackors 对应地方的数组索引
)
),
2 => array(
launch => 'left',
attackor => 2, //人物B发起攻击
hurt => array(0 => array('beattackors' => 1), //敌人A被攻击 beattackors 对应地方的数组索引
)
), //到这里由于敌人已经攻击完了,但是本方还没有攻击完,继续left
3 => array(
launch => 'left',
attackor => 3, //人物C发起攻击
hurt => array(0 => array('beattackors' => 1), //攻击敌人A beattackors 对应地方的数组索引
)
)
);
PHP怎么实现这个PK过程呢。
按速度属性排列出来一个攻击顺序队列,攻击完成,出队列
$humen中增加计数属性,记录都有谁攻击过,且每个item中的人物增加血条值属性和is_alive属性,血没了is_alive置为false;
内容总结
以上是互联网集市为您收集整理的一个php处理回合制PK过程的问题全部内容,希望文章能够帮你解决一个php处理回合制PK过程的问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。