NumericAttributesCast.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <?php
  2. namespace App\Module\GameItems\Casts;
  3. use UCore\Model\CastsAttributes;
  4. /**
  5. * 物品数值属性类型转换器
  6. *
  7. * 用于将数据库中存储的JSON格式的物品数值属性转换为PHP对象,以及将PHP对象转换回JSON格式。
  8. * 物品数值属性包含用于游戏逻辑计算的属性,如宝箱掉落数量、宠物属性加成、奖励物品组等。
  9. * 这些属性直接影响游戏玩法和平衡性,是物品系统的核心数据。
  10. */
  11. class NumericAttributesCast extends CastsAttributes
  12. {
  13. /**
  14. * 减少作物生长时间
  15. *
  16. * @var int $intd
  17. */
  18. public int $crop_growth_time = 0;
  19. /**
  20. * 增加宠物体力
  21. *
  22. * @var int $pet_power
  23. */
  24. public int $pet_power = 0;
  25. /**
  26. * 使用后随即奖励物品组
  27. *
  28. * @var int $reward_group_id
  29. */
  30. public int $reward_group_id = 0;
  31. /**
  32. * 增加宠物经验
  33. *
  34. * @var int $pet_exp
  35. */
  36. public int $pet_exp = 0;
  37. /**
  38. * 除虫概率(百分比格式,100=100%)
  39. *
  40. * @var int $fram_pesticide_rate
  41. */
  42. public int $fram_pesticide_rate = 0;
  43. /**
  44. * 解决干旱概率(百分比格式,100=100%)
  45. *
  46. * @var int $fram_drought_rate
  47. */
  48. public int $fram_drought_rate = 0;
  49. /**
  50. * 除草概率(百分比格式,100=100%)
  51. *
  52. * @var int $fram_weedicide_rate
  53. */
  54. public int $fram_weedicide_rate = 0;
  55. /**
  56. * 农场铲除奖励属性,关联奖励组ID
  57. * 当使用该道具进行铲除作物操作时,会根据此属性值关联的奖励组给予玩家额外奖励
  58. * 0表示无奖励,大于0的值表示奖励组ID
  59. *
  60. * @var int $fram_remove_reward_group
  61. */
  62. public int $fram_remove_reward_group = 0;
  63. /**
  64. * 神像时间(秒),用以标识该物品可以开启神像
  65. *
  66. * @var int $god_duration_seconds
  67. */
  68. public int $god_duration_seconds = 0;
  69. /**
  70. * 神像种类,用以标识该物品可以开启的神像种类
  71. * 1=丰收之神, 2=雨露之神, 3=屠草之神, 4=拭虫之神
  72. *
  73. * @var int $god_type
  74. */
  75. public int $god_type = 0;
  76. /**
  77. * 宠物种类,用以标识该物品使用后可以获取的宠物种类
  78. * 对应PetConfig表中的pet_type字段
  79. *
  80. * @var string $pet_type
  81. */
  82. public string $pet_type = '';
  83. }