自己保存的测试代码

前网易架构师-高司机
游戏服务器领域优质创作者
博客专家认证
2017-07-11 08:29:18
public function updateCharacter($accountId,$targetId)
{
//找到自己的角色信息
$CharacterInfo = $this->Player->getUserBlobInfo(array("usercharacter"),$accountId);
if(count($CharacterInfo["usercharacter"]) == 0)
{
$return_Data = array( "ts"=> time(), "errcode" => -2, "errmsg" => "You have no this charater");
return ($return_Data);
}
if(!isset($CharacterInfo["usercharacter"][$targetId]))
{
$return_Data = array( "ts"=> time(), "errcode" => -3, "errmsg" => "You have no this charater");
return ($return_Data);
}
//判断下要不要解锁
if(isset($CharacterInfo["usercharacter"][$targetId]['needadvance']) && $CharacterInfo["usercharacter"][$targetId]['needadvance'] == true)//如果是可以进阶了需要加一个锁
{
$return_Data = array( "ts"=> time(), "errcode" => -7, "errmsg" => "you need advance charater");
return ($return_Data);
}

$CharacterData = xmlConfig::LoadXmlData("role.xml");
//计算下这些成长值可以升级到多少
$old_level = $CharacterInfo["usercharacter"][$targetId]['level'];//升级之前的等级
$cost_arr = array();
$findFlag = false;
$need_lock = false;
foreach($CharacterData["role_".$targetId."s"][$targetId] as $sheet_key => $sheet_value){
foreach($sheet_value as $item_key => $value){
if($value['id'] == $old_level + 1)
{
$quality_array = explode("-",$value['quality']);
if(count($quality_array) == 2)//相当于进阶
{
$need_lock = true;
}else{//升级
$cost_arr = xmlConfig::getReward($value['cost']);
$findFlag = true;
}

}
if($value['id'] > $old_level + 1)
{
break;
}
}
}
...全文
269 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
傲雪星枫 2017-07-15
  • 打赏
  • 举报
回复

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧