RoomPlayerDataBase.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using Island.StandardLib.Math;
  2. namespace Island.StandardLib.Storage
  3. {
  4. public class RoomPlayerDataBase : IStorable
  5. {
  6. public long PeopleCount;
  7. public float PeopleHappy;
  8. public Percentage EcoStructure;
  9. public float Inflation;
  10. public long Foods;
  11. public long Technology;
  12. public long MedicalTreatment;
  13. public long Army;
  14. public long Education;
  15. public long Achievements;
  16. public long GovIncome;
  17. public int GDPperPeople => (int)((EcoStructure[0] * 5f + EcoStructure[1] * 30 + EcoStructure[2] * 100) * PeopleHappy);
  18. public long GDP => GDPperPeople * PeopleCount;
  19. public void ReadFromData(DataStorage data)
  20. {
  21. data.Read(out PeopleCount);
  22. data.Read(out PeopleHappy);
  23. data.Read(out EcoStructure);
  24. data.Read(out Inflation);
  25. data.Read(out Foods);
  26. data.Read(out Technology);
  27. data.Read(out MedicalTreatment);
  28. data.Read(out Army);
  29. data.Read(out Education);
  30. data.Read(out Achievements);
  31. data.Read(out GovIncome);
  32. }
  33. public void WriteToData(DataStorage data)
  34. {
  35. data.Write(PeopleCount);
  36. data.Write(PeopleHappy);
  37. data.Write(EcoStructure);
  38. data.Write(Inflation);
  39. data.Write(Foods);
  40. data.Write(Technology);
  41. data.Write(MedicalTreatment);
  42. data.Write(Army);
  43. data.Write(Education);
  44. data.Write(Achievements);
  45. data.Write(GovIncome);
  46. }
  47. }
  48. }