2017-05-13 1 views
-1

나는 php, html, sql & js atm으로 엄격하게 구축 된 브라우저 용 게임을 개발 중입니다. 그것은 내가하고있는 재미있는 프로젝트 일뿐입니다. 그러나 기능이 의도 한대로 작동하지 않는 곳으로 왔고 내가 도움이 될 수있는 도움이 도움이 될 수 있습니다. 그러니 그 말로는 적과 싸울 수있는 페이지가 있습니다. 이제 공격 버튼을 누르면 수식이 계산되어 적의 현재 건강 상태 - 즉 수식에 따라 적의 건강 상태를 업데이트합니다. 이제는 의도 한대로 작동합니다. 나는 그 다음에 반대편으로 나아가고 (적을 공격 할 때) 의도 한대로 작동하지 않습니다. 무엇을 막론하고 항상 올바른 공식을 실행하는 대신 문자의 상태를 0으로 설정합니다. $enemy & $my_character은 배열입니다.함수로 문제가있는 웹 게임 만들기

$enemy = Array ([level] => 1 [cur_health] => 104 [max_health] => 108 [cur_mana] => 36 [max_mana] => 36 [defense] => 30 [attack_power] => 16 [spell_power] => 3 [image] => images/enemies/demon_1.png [name] => Demon [battleback] => images/battlebacks/cave1.png) 

$my_character = Array ([name] => rackemup [level] => 1 [next_level] => 2 [avatar] => 05.png [class] => Knight [race] => Human [max_health] => 135 [current_health] => 135 [max_mana] => 9 [current_mana] => 9 [next_level_xp] => 100 [current_xp] => 30 [sp] => 0 [gold] => 115 [tokens] => 0 [ac] => 0 [defense] => 18 [attack_power] => 20 [spell_power] => 1) 

컨트롤러 :

if ($action == "attack") { 

    charAttack($enemy,$my_character); 

    enemyAttack($enemy,$my_character); 

    header("Location: ?route=$route&msg=2#attack"); 
    exit; 

} 

모델 :

function enemyAttack($enemy,$my_character) { 
    $dmg = $enemy['attack_power'] - $my_character['defense']; 
    if ($dmg <= 0) { 
    $dmg = 1; 
    }else{ 
    $dmg = ceil($dmg); 
    } 
    $cur_hp = $my_character['cur_health'] - $dmg; 
    updateCharacter($_SESSION['char'],"health",$cur_hp); 
    updateLog("Enemy Attack","The Enemy Hit You For ".number_format($dmg)." Damage!"); 
} 

function charAttack($enemy,$my_character) { 
    $dmg = $my_character['attack_power'] - $enemy['defense']; 
    if ($dmg <= 0) { 
    $dmg = 1; 
    }else{ 
    $dmg = ceil($dmg); 
    } 
    $cur_hp = $enemy['cur_health'] - $dmg; 
    updateEnemy($_SESSION['char'],"health",$cur_hp); 
    updateLog("User Attack","Your Attack Hit The Enemy For ".number_format($dmg)." Damage!"); 
} 

답변

2

enemyAttack에서 $my_character['current_health'] 대신 $my_character['cur_health']를 시도? ;-)