Advertisement
Guest User

Untitled

a guest
Jan 10th, 2020
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. void CHARACTER::UpdateAggrPointEx(LPCHARACTER pAttacker, EDamageType type, int dam, CHARACTER::TBattleInfo & info)
  2. {
  3. // ĆŻÁ¤ °ř°ÝŸŔÔżˇ µű¶ó ´ő żĂ¶ó°Ł´Ů
  4. switch (type)
  5. {
  6. case DAMAGE_TYPE_NORMAL_RANGE:
  7. dam = (int) (dam*1.2f);
  8. break;
  9.  
  10. case DAMAGE_TYPE_RANGE:
  11. dam = (int) (dam*1.5f);
  12. break;
  13.  
  14. case DAMAGE_TYPE_MAGIC:
  15. dam = (int) (dam*1.2f);
  16. break;
  17.  
  18. default:
  19. break;
  20. }
  21.  
  22. // °ř°ÝŔÚ°ˇ ÇöŔç ´ë»óŔÎ °ćżě ş¸łĘ˝ş¸¦ ÁŘ´Ů.
  23. if (pAttacker == GetVictim())
  24. dam = (int) (dam * 1.2f);
  25.  
  26. info.iAggro += dam;
  27.  
  28. if (info.iAggro < 0)
  29. info.iAggro = 0;
  30.  
  31. //sys_log(0, "UpdateAggrPointEx for %s by %s dam %d total %d", GetName(), pAttacker->GetName(), dam, total);
  32. if (GetParty() && dam > 0 && type != DAMAGE_TYPE_SPECIAL)
  33. {
  34. LPPARTY pParty = GetParty();
  35.  
  36. // ¸®´őŔÎ °ćżě żµÇâ·ÂŔĚ Á»´ő °­ÇĎ´Ů
  37. int iPartyAggroDist = dam;
  38.  
  39. if (pParty->GetLeaderPID() == GetVID())
  40. iPartyAggroDist /= 2;
  41. else
  42. iPartyAggroDist /= 3;
  43.  
  44. pParty->SendMessage(this, PM_AGGRO_INCREASE, iPartyAggroDist, pAttacker->GetVID());
  45. }
  46.  
  47. if (type != DAMAGE_TYPE_POISON)
  48. ChangeVictimByAggro(info.iAggro, pAttacker);
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement