Ich mache ein Spiel, und ich habe eine Health
Variable, um zu verfolgen, wie viel Gesundheit der Spieler hat, wie sie durch das Spiel gehen. An einem Punkt schneidet der Spieler seine Lippe auf einer Dose (uneventful, ich weiß), und verliert 2 HP. Ich versuche Arithmetik zu benutzen, um 2 PS von der 'Health'-Variable abzuziehen (die immer noch bei 100 ist), und dann zu zeigen, wie viel Gesundheit sie übrig hat, aber es zeigt immer noch 100 HP, nachdem ich versucht habe 2 zu entfernen HP. Mache ich das richtig?Arithmetik im Batch?
:Beans
call :colorEcho 7 "You decide you're going to have Canned Beans for breakfast. Yum. You grab a knife from the kitchen counter and work the top off. You eat the beans straight from the can. Ouch! You cut your lip! It starts to bleed."
Echo .
set /a "_Health=_Health-2"
Echo.
call :colorEcho C "# ALERT; You have lost 2 Health Points! You are now at %Health% HP!"
Echo.
pause
exit
Was geschieht:
Haben Sie versucht, ohne die '' 's? –
Ich denke, dieses Code-Fragment ist in einem Block in Klammern'() '; wenn ich richtig bin, brauchen Sie [verzögerte Erweiterung] (http://ss64.com /nt/delayedexpansion.html), oder du schreibst 'set/A _Health- = 2' ... – aschipfl
@i_am_jorf Ja, habe ich ohne die' '' s versucht, aber ich bekomme das gleiche Ergebnis. – FudgeMuffins