BsScriptResource.cpp 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #include "BsScriptResource.h"
  2. namespace BansheeEngine
  3. {
  4. ScriptResourceBase::ScriptResourceBase(MonoObject* instance)
  5. :PersistentScriptObjectBase(instance), mRefreshInProgress(false)
  6. { }
  7. ScriptObjectBackup ScriptResourceBase::beginRefresh()
  8. {
  9. mRefreshInProgress = true;
  10. return PersistentScriptObjectBase::beginRefresh();
  11. }
  12. void ScriptResourceBase::endRefresh(const ScriptObjectBackup& backupData)
  13. {
  14. mRefreshInProgress = false;
  15. PersistentScriptObjectBase::endRefresh(backupData);
  16. }
  17. ScriptResourceType ScriptResource::getTypeFromTypeId(UINT32 typeId)
  18. {
  19. switch (typeId)
  20. {
  21. case TID_Texture:
  22. return ScriptResourceType::Texture;
  23. case TID_SpriteTexture:
  24. return ScriptResourceType::SpriteTexture;
  25. case TID_Mesh:
  26. return ScriptResourceType::Mesh;
  27. case TID_Shader:
  28. return ScriptResourceType::Shader;
  29. case TID_Material:
  30. return ScriptResourceType::Material;
  31. case TID_Font:
  32. return ScriptResourceType::Font;
  33. case TID_Prefab:
  34. return ScriptResourceType::Prefab;
  35. case TID_PlainText:
  36. return ScriptResourceType::PlainText;
  37. case TID_ScriptCode:
  38. return ScriptResourceType::ScriptCode;
  39. }
  40. return ScriptResourceType::Undefined;
  41. }
  42. UINT32 ScriptResource::getTypeIdFromType(ScriptResourceType type)
  43. {
  44. switch (type)
  45. {
  46. case ScriptResourceType::Texture:
  47. return TID_Texture;
  48. case ScriptResourceType::SpriteTexture:
  49. return TID_SpriteTexture;
  50. case ScriptResourceType::Mesh:
  51. return TID_Mesh;
  52. case ScriptResourceType::Shader:
  53. return TID_Shader;
  54. case ScriptResourceType::Font:
  55. return TID_Font;
  56. case ScriptResourceType::Material:
  57. return TID_Material;
  58. case ScriptResourceType::Prefab:
  59. return TID_Prefab;
  60. case ScriptResourceType::PlainText:
  61. return TID_PlainText;
  62. case ScriptResourceType::ScriptCode:
  63. return TID_ScriptCode;
  64. }
  65. return 0;
  66. }
  67. }