stomach.c 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. class StomachMdfr: ModifierBase
  2. {
  3. override void Init()
  4. {
  5. m_TrackActivatedTime = false;
  6. m_ID = eModifiers.MDF_STOMACH;
  7. m_TickIntervalInactive = DEFAULT_TICK_TIME_INACTIVE;
  8. m_TickIntervalActive = DEFAULT_TICK_TIME_ACTIVE;
  9. DisableDeactivateCheck();
  10. }
  11. override bool ActivateCondition(PlayerBase player)
  12. {
  13. return true;
  14. }
  15. override bool DeactivateCondition(PlayerBase player)
  16. {
  17. return false;
  18. }
  19. override void OnReconnect(PlayerBase player)
  20. {
  21. }
  22. override void OnTick(PlayerBase player, float deltaT)
  23. {
  24. player.m_PlayerStomach.Update(deltaT);
  25. /*
  26. float stomachs_combined_before = player.GetStatStomachWater().Get() + player.GetStatStomachEnergy().Get();
  27. if(stomachs_combined_before <=0) // takes care of division by 0 also there is no point in doing anything if there is nothing to transfer
  28. {
  29. player.GetStatStomachVolume().Set(0);
  30. return;
  31. }
  32. // Energy
  33. if ( player.GetStatStomachEnergy().Get() >= PlayerConstants.STOMACH_ENERGY_TRANSFERED_PER_SEC*deltaT )
  34. {
  35. player.GetStatEnergy().Add(PlayerConstants.STOMACH_ENERGY_TRANSFERED_PER_SEC*deltaT);
  36. player.GetStatStomachEnergy().Add(-PlayerConstants.STOMACH_ENERGY_TRANSFERED_PER_SEC*deltaT);
  37. }
  38. else
  39. {
  40. player.GetStatEnergy().Add(player.GetStatStomachEnergy().Get());
  41. player.GetStatStomachEnergy().Set(0);
  42. }
  43. //Water
  44. if ( player.GetStatStomachWater().Get() >= PlayerConstants.STOMACH_WATER_TRANSFERED_PER_SEC*deltaT )
  45. {
  46. player.GetStatWater().Add(PlayerConstants.STOMACH_WATER_TRANSFERED_PER_SEC*deltaT);
  47. player.GetStatStomachWater().Add(-PlayerConstants.STOMACH_WATER_TRANSFERED_PER_SEC*deltaT);
  48. }
  49. else
  50. {
  51. player.GetStatWater().Add(player.GetStatStomachWater().Get());
  52. player.GetStatStomachWater().Set(0);
  53. }
  54. float stomachs_combined_after = player.GetStatStomachWater().Get() + player.GetStatStomachEnergy().Get();
  55. float percentage = stomachs_combined_after / stomachs_combined_before;
  56. player.GetStatStomachVolume().Set( player.GetStatStomachVolume().Get() * percentage );
  57. */
  58. }
  59. };