Browse Source

Merge pull request #1770 from Adriankhl/fix_label_update_on_hit

Process attack/attacked animation before dealing damage to units
Ivan Savenko 2 years ago
parent
commit
786035085a
1 changed files with 4 additions and 1 deletions
  1. 4 1
      client/NetPacksClient.cpp

+ 4 - 1
client/NetPacksClient.cpp

@@ -748,11 +748,14 @@ void ApplyFirstClientNetPackVisitor::visitBattleStackMoved(BattleStackMoved & pa
 void ApplyFirstClientNetPackVisitor::visitBattleAttack(BattleAttack & pack)
 {
 	callBattleInterfaceIfPresentForBothSides(cl, &IBattleEventsReceiver::battleAttack, &pack);
+
+	// battleStacksAttacked should be excuted before BattleAttack.applyGs() to play animation before damaging unit
+	// so this has to be here instead of ApplyClientNetPackVisitor::visitBattleAttack()
+	callBattleInterfaceIfPresentForBothSides(cl, &IBattleEventsReceiver::battleStacksAttacked, pack.bsa, pack.shot());
 }
 
 void ApplyClientNetPackVisitor::visitBattleAttack(BattleAttack & pack)
 {
-	callBattleInterfaceIfPresentForBothSides(cl, &IBattleEventsReceiver::battleStacksAttacked, pack.bsa, pack.shot());
 }
 
 void ApplyFirstClientNetPackVisitor::visitStartAction(StartAction & pack)