|
98 | 98 | armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
|
99 | 99 | resistance_flags = FIRE_PROOF
|
100 | 100 | var/katana_cooldown
|
101 |
| - var/mob/living/carbon/human/user = owner |
| 101 | + var/mob/living/user = null |
102 | 102 | var/mob/living/target
|
103 |
| - var/obj/item/organ/external/head/head = target.get_organ(BODY_ZONE_HEAD) |
104 | 103 |
|
105 | 104 |
|
106 | 105 | /obj/item/melee/katana/suicide_act(mob/user)
|
|
109 | 108 |
|
110 | 109 | /obj/item/melee/katana/proc/reset_cooldown()
|
111 | 110 | katana_cooldown = FALSE
|
112 |
| - if(owner) |
113 |
| - owner.update_action_buttons() |
114 |
| - to_chat(owner, span_notice("Вы готовы к новому рывку.")) |
| 111 | + if(user) |
| 112 | + user.update_action_buttons() |
| 113 | + to_chat(user, span_notice("Вы готовы к новому рывку.")) |
115 | 114 |
|
116 | 115 |
|
117 | 116 | /obj/item/melee/katana/ui_action_click(mob/user, datum/action/action, leftclick)
|
118 | 117 | if(katana_cooldown)
|
119 |
| - to_chat(owner, span_warning("Вам нужна отдышка перед новым рывком!")) |
| 118 | + to_chat(user, span_warning("Вам нужна отдышка перед новым рывком!")) |
120 | 119 | return
|
121 | 120 |
|
122 | 121 | charge()
|
123 | 122 |
|
124 |
| - implant_emp_downtime = TRUE |
| 123 | + katana_cooldown = TRUE |
125 | 124 | addtimer(CALLBACK(src, PROC_REF(reset_cooldown)), 100 SECONDS) // 100 секунд для повторного рывка
|
126 | 125 |
|
127 |
| -/obj/item/melee/katana/proc/charge() |
128 |
| - owner.multiplicative_slowdown = -1 |
129 |
| - owner.Move(NewLoc,Dir=0,step_x=5,step_y=0) |
130 |
| - owner.scream |
| 126 | +/obj/item/melee/katana/proc/charge(atom/newloc) |
| 127 | + user.multiplicative_slowdown = -1 |
| 128 | + user.Move(newloc,Dir=0,step_x=5,step_y=0) |
| 129 | + user.emote("scream") |
131 | 130 |
|
132 | 131 | /obj/item/melee/katana/Bump(atom/bumped)
|
| 132 | + var/obj/item/organ/external/head/head = target.get_organ(BODY_ZONE_HEAD) |
133 | 133 | if(!charge())
|
134 | 134 | return
|
135 | 135 | if(isliving(bumped))
|
136 | 136 | if(ismegafauna(bumped))
|
137 | 137 | return
|
138 | 138 | target = bumped
|
139 |
| - head.droplimb() |
140 |
| - add_attack_logs(owner, target, "beheaded with [src]") |
141 |
| - H.regenerate_icons() |
142 |
| - kill_count++ |
143 |
| - if(!HAS_TRAIT(owner, TRAIT_FLOORED)) |
144 |
| - owner.Weaken(3 SECONDS) |
| 139 | + head.droplimb() |
| 140 | + add_attack_logs(user, target, "beheaded with [src]") |
| 141 | + target.regenerate_icons() |
| 142 | + if(!HAS_TRAIT(user, TRAIT_FLOORED)) |
| 143 | + user.Weaken(3 SECONDS) |
145 | 144 |
|
146 | 145 | /obj/item/melee/katana/basalt
|
147 | 146 | name = "basalt katana"
|
|
0 commit comments