StorageWork.cpp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #include "StorageWork.h"
  2. bool GetStateFolder(const char* group, ICoreStorageFolder* &var)
  3. {
  4. RELEASE(var);
  5. var = api->Storage().GetItemFolder(group,_FL_);
  6. return (var!=null);
  7. }
  8. void GetStatVar(ICoreStorageFloat * & var, const char* state)
  9. {
  10. RELEASE(var);
  11. char name[256];
  12. crt_strcpy(name, sizeof(name), "Runtime.Statistic.");
  13. crt_strcat(name, sizeof(name), state);
  14. var = api->Storage().GetItemFloat(name, _FL_);
  15. var->Set(0.0f);
  16. }
  17. bool GetStateFloatVar(const char* state, ICoreStorageFloat* &var)
  18. {
  19. RELEASE(var);
  20. var = api->Storage().GetItemFloat(state,_FL_);
  21. return (var!=null);
  22. }
  23. float ReadGameState(const char* id,float def)
  24. {
  25. return api->Storage().GetFloat(id,def);
  26. }
  27. void WriteGameState(const char* id, float value)
  28. {
  29. api->Storage().SetFloat(id, value);
  30. }
  31. float ReadGameState(ICoreStorageFloat* var,float def)
  32. {
  33. if (var)
  34. {
  35. if (var->IsValidate())
  36. {
  37. return var->Get(def);
  38. }
  39. }
  40. return def;
  41. }
  42. void WriteGameState(ICoreStorageFloat* var, float value)
  43. {
  44. if (var)
  45. {
  46. var->Set(value);
  47. }
  48. }
  49. bool GetStateStringVar(const char* state, ICoreStorageString* &var)
  50. {
  51. RELEASE(var);
  52. var = api->Storage().GetItemString(state,_FL_);
  53. return (var!=null);
  54. }
  55. const char* ReadGameState(const char* id,const char* def)
  56. {
  57. return api->Storage().GetString(id,def);
  58. }
  59. void WriteGameState(const char* id, const char* value)
  60. {
  61. api->Storage().SetString(id, value);
  62. }
  63. const char* ReadGameState(ICoreStorageString* var,const char* def)
  64. {
  65. if (var)
  66. {
  67. if (var->IsValidate())
  68. {
  69. return var->Get(def);
  70. }
  71. }
  72. return def;
  73. }
  74. void WriteGameState(ICoreStorageString* var, const char* value)
  75. {
  76. if (var)
  77. {
  78. var->Set(value);
  79. }
  80. }