Advertisement
Guest User

Untitled

a guest
Jul 28th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.64 KB | None | 0 0
  1. /*
  2. Cloaker: Monster produced by the monster_cloak item. Don't use otherwise.
  3. */
  4.  
  5. inherit "/std/monster";
  6. inherit "/lib/living/attack";
  7. inherit "/lib/living/supporting";
  8.  
  9. #include <macros.h>
  10. #include <stdproperties.h>
  11. #include <ss_types.h>
  12. #include <wa_types.h>
  13. #include <poison.h>
  14.  
  15. public void
  16. create_monster()
  17. {
  18. if (!IS_CLONE) { return; }
  19. set_name("cloaker");
  20. add_adj(({"black","vicious"}));
  21. set_race_name("cloak");
  22. set_gender(G_NEUTER);
  23. set_long("A twisting, horrifying peice of black, leather-like fabric in the shape of a cloak, somehow floating "+
  24. "on its own and twisting in mid-air. An opening along the neck shows a row of serrated teeth, and tendrils "+
  25. "erupt from the shoulders of the creature, flailing dangerously.\n");
  26.  
  27. set_stats(({175 + random(35),
  28. 285 + random(35),
  29. 270 + random(35),
  30. 145 + random(20),
  31. 140 + random(20),
  32. 160 + random(20) }));
  33.  
  34. set_skill(SS_UNARM_COMBAT, 100);
  35. set_skill(SS_THROWING, 100);
  36. set_skill(SS_DEFENCE, 100);
  37. set_skill(SS_AWARENESS, 100);
  38.  
  39. add_prop(CONT_I_WEIGHT, 40000);
  40. add_prop(CONT_I_HEIGHT, 350);
  41. add_prop(LIVE_I_FIGHT_MOOD, 7);
  42. add_prop(LIVE_I_NO_NUDE, 1);
  43. add_prop(LIVE_I_NEVERKNOWN, 1);
  44. add_prop(LIVE_I_NEVER_ILL, 1);
  45. add_prop(LIVE_I_SEE_DARK, 1);
  46. add_prop(LIVE_I_NO_GHOST, 1);
  47. add_prop(LIVE_I_NO_FEAR, 1);
  48. add_prop(LIVE_I_NO_BACKSTAB, 1);
  49. add_prop(LIVE_I_NO_NBIND, 1);
  50. add_prop(LIVE_I_NO_CHARM, 1);
  51. add_prop(LIVE_I_NO_BARD_DANCE, 1);
  52. add_prop(LIVE_I_NOT_UNCONSCIOUS, 1);
  53. add_prop(LIVE_I_NO_BLEED, 1);
  54. add_prop(LIVE_I_NO_TRACKS, 1);
  55. add_prop(LIVE_I_NO_CORPSE, 1);
  56.  
  57. add_prop(LIVE_S_BEAUTY_STRING, "unearthly");
  58.  
  59. set_aggressive(1);
  60.  
  61. }
  62.  
  63. init_living()
  64. {
  65. ::init_living();
  66. init_attack();
  67. }
  68.  
  69. nomask void cb_configure()
  70. {
  71. add_tool_slot(TS_TORSO, "glistening black body");
  72. add_tool_slot(TS_WAIST, "slick black body");
  73. add_tool_slot(TS_HEAD, "strange red collar");
  74. add_tool_slot(TS_MOUTH, "serrated teeth");
  75. add_tool_slot(TS_RLEG, "long slender tendril");
  76. add_tool_slot(TS_LLEG, "long slender tendril");
  77. add_tool_slot(TS_RFOOT, "clawed tendril");
  78. add_tool_slot(TS_LFOOT, "clawed tendril");
  79. add_tool_slot(TS_RARM, "long slender tendril");
  80. add_tool_slot(TS_LARM, "long slender tendril");
  81. add_tool_slot(TS_RHAND, "long slender tendril");
  82. add_tool_slot(TS_LHAND, "long slender tendril");
  83.  
  84. call_cb_fun("cb_add_attack",TT_CLAW, 0, TS_RFOOT, 0);
  85. call_cb_fun("cb_add_attack",TT_CLAW, 0, TS_LFOOT, 0);
  86. call_cb_fun("cb_add_attack",TT_CLAW, 0, TS_RHAND, 0);
  87. call_cb_fun("cb_add_attack",TT_CLAW, 0, TS_LHAND, 0);
  88. call_cb_fun("cb_add_attack",TT_BITE, 0, TS_MOUTH, 0);
  89.  
  90. call_cb_fun("cb_add_hitloc",TS_HEAD, 90, 5);
  91. call_cb_fun("cb_add_hitloc",TS_TORSO, 110, 30);
  92. call_cb_fun("cb_add_hitloc",TS_WAIST, 110, 30);
  93. call_cb_fun("cb_add_hitloc",TS_RARM, 110, 10);
  94. call_cb_fun("cb_add_hitloc",TS_LARM, 110, 10);
  95. call_cb_fun("cb_add_hitloc",TS_RLEG, 110, 15);
  96. call_cb_fun("cb_add_hitloc",TS_LLEG, 110, 15);
  97.  
  98. }
  99.  
  100. public int
  101. do_die()
  102. {
  103. SAY_ROOM_VIS("Suddenly tears, pieces of its body scattering to the wind as the rest crumples into a heap.\n");
  104. clone_object("/d/System/armours/robe/ragged_cloak")->move(environment());
  105. return ::do_die(killer);
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement