yieldslandanimals.c 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. class LandAnimalYieldItemBase : YieldItemBase {}
  2. //------------------------------------//
  3. //generic animal with basic info only //
  4. //------------------------------------//
  5. class YieldItemGenericSmallAnimal : LandAnimalYieldItemBase
  6. {
  7. void YieldItemGenericSmallAnimal(int baseWeight, string type, int enviroMask, int methodMask)
  8. {
  9. m_Type = type;
  10. m_EnviroMask = enviroMask;
  11. m_MethodMask = methodMask;
  12. }
  13. }
  14. //mammals
  15. class YieldItemDeadRabbit : LandAnimalYieldItemBase
  16. {
  17. override void Init()
  18. {
  19. super.Init();
  20. m_Type = "DeadRabbit";
  21. m_EnviroMask = AnimalCatchingConstants.MASK_ENVIRO_FOREST;
  22. m_MethodMask = AnimalCatchingConstants.MASK_METHOD_LANDTRAP_SNARE;
  23. }
  24. override float GetBaitTypeSensitivity(ECatchingBaitCategories type)
  25. {
  26. switch (type)
  27. {
  28. case ECatchingBaitCategories.BAIT_TYPE_EMPTY:
  29. case ECatchingBaitCategories.BAIT_TYPE_PLANT:
  30. return 1.0;
  31. /*
  32. //We can define 'offputing' baits the animal would actually AVOID
  33. case ECatchingBaitCategories.BAIT_TYPE_MEAT_SMALL:
  34. case ECatchingBaitCategories.BAIT_TYPE_MEAT_LARGE:
  35. return -1;
  36. */
  37. }
  38. return 0.0;
  39. }
  40. override string GetCatchDeathSoundset()
  41. {
  42. return "BrownHareDeath_SoundSet";
  43. }
  44. override string GetCatchAINoise()
  45. {
  46. return "WolfRoarNoise";
  47. }
  48. override float GetCatchAINoiseBaseStrength()
  49. {
  50. return 1.0;
  51. }
  52. }
  53. class YieldItemDeadFox : LandAnimalYieldItemBase
  54. {
  55. override void Init()
  56. {
  57. super.Init();
  58. m_Type = "DeadFox";
  59. m_EnviroMask = AnimalCatchingConstants.MASK_ENVIRO_FOREST;
  60. m_MethodMask = AnimalCatchingConstants.MASK_METHOD_LANDTRAP_SNARE;
  61. }
  62. override float GetBaitTypeSensitivity(ECatchingBaitCategories type)
  63. {
  64. switch (type)
  65. {
  66. case ECatchingBaitCategories.BAIT_TYPE_EMPTY:
  67. case ECatchingBaitCategories.BAIT_TYPE_MUSHROOM:
  68. case ECatchingBaitCategories.BAIT_TYPE_MEAT_SMALL:
  69. case ECatchingBaitCategories.BAIT_TYPE_MEAT_LARGE:
  70. return 1.0;
  71. }
  72. return 0.0;
  73. }
  74. override string GetCatchDeathSoundset()
  75. {
  76. return "Red_Fox_Death_SoundSet";
  77. }
  78. override string GetCatchAINoise()
  79. {
  80. return "WolfRoarNoise";
  81. }
  82. override float GetCatchAINoiseBaseStrength()
  83. {
  84. return 1.0;
  85. }
  86. }
  87. //poultry
  88. class YieldItemCapraHircusBase : LandAnimalYieldItemBase
  89. {
  90. override void Init()
  91. {
  92. super.Init();
  93. m_EnviroMask = AnimalCatchingConstants.MASK_ENVIRO_FIELD;
  94. m_MethodMask = AnimalCatchingConstants.MASK_METHOD_LANDTRAP_SNARE;
  95. }
  96. override float GetBaitTypeSensitivity(ECatchingBaitCategories type)
  97. {
  98. switch (type)
  99. {
  100. case ECatchingBaitCategories.BAIT_TYPE_EMPTY:
  101. case ECatchingBaitCategories.BAIT_TYPE_PLANT:
  102. case ECatchingBaitCategories.BAIT_TYPE_SEED:
  103. case ECatchingBaitCategories.BAIT_TYPE_MUSHROOM:
  104. case ECatchingBaitCategories.BAIT_TYPE_MEAT_SMALL:
  105. return 1.0;
  106. }
  107. return 0.0;
  108. }
  109. override string GetCatchDeathSoundset()
  110. {
  111. return "HenScream_SoundSet";
  112. }
  113. override string GetCatchAINoise()
  114. {
  115. return "WolfRoarNoise";
  116. }
  117. override float GetCatchAINoiseBaseStrength()
  118. {
  119. return 1.0;
  120. }
  121. }
  122. class YieldItemDeadRooster : YieldItemCapraHircusBase
  123. {
  124. override void Init()
  125. {
  126. super.Init();
  127. m_Type = "DeadRooster";
  128. }
  129. }
  130. class YieldItemDeadChicken_White : YieldItemCapraHircusBase
  131. {
  132. override void Init()
  133. {
  134. super.Init();
  135. m_Type = "DeadChicken_White";
  136. }
  137. }
  138. class YieldItemDeadChicken_Spotted : YieldItemCapraHircusBase
  139. {
  140. override void Init()
  141. {
  142. super.Init();
  143. m_Type = "DeadChicken_Spotted";
  144. }
  145. }
  146. class YieldItemDeadChicken_Brown : YieldItemCapraHircusBase
  147. {
  148. override void Init()
  149. {
  150. super.Init();
  151. m_Type = "DeadChicken_Brown";
  152. }
  153. }