2014-03-01 5 views
0

다음 다섯 문장을 실행하기 전에 세 버튼 중 하나가 성공적으로 눌러 질 때까지 기다리고 싶습니다. 어떻게해야합니까?버튼을 클릭하기를 기다리는 중

playerTurn: (opponent) -> 
    $attackButton.click -> buttonClick.attackButtonClick(opponent) 

    $defendButton.click -> buttonClick.defendButtonClick(opponent) 

    $useItemButton.click -> buttonClick.useItemButtonClick(opponent) 

    status.Poison("opponent", opponent) if opponent.Poisoned 
    status.Burn("opponent", opponent) if opponent.Burned 
    status.Freeze("opponent", opponent) if opponent.Frozen 
    opponent.undefend() if opponent.defenseDoubled or opponent.defenseTripled 
    refresh(opponent) 

답변

1

고유 한 기능으로 명령문을 래핑하고 클릭 할 때마다 호출하는 것이 효과가 있습니까?

playerTurn: (opponent) -> 
    opponentAction = -> 
    status.Poison "opponent", opponent if opponent.Poisoned 
    status.Burn "opponent", opponent if opponent.Burned 
    status.Freeze "opponent", opponent if opponent.Frozen 
    opponent.undefend() if opponent.defenseDoubled or opponent.defenseTripled 
    refresh opponent 

    $attackButton.click -> 
    opponentAction() 
    buttonClick.attackButtonClick opponent 

    $defendButton.click -> 
    opponentAction() 
    buttonClick.defendButtonClick opponent 

    $useItemButton.click -> 
    opponentAction() 
    buttonClick.useItemButtonClick opponent 
+0

작동합니다. 왜 마지막에 '귀환'해야하는지 묻겠습니다. – LukeK

+0

js/coffeescript 변환기를 사용하고있었습니다 (나는 coffeescript를 너무 자주 사용하지 않습니다). 나는 당신이 실제로 그것을 필요로하지 않는다고 생각합니다. – nwalton

관련 문제