/obj/item/weapon/gun/launcher name = "launcher" desc = "A device that launches things." w_class = ITEMSIZE_HUGE slot_flags = SLOT_BACK var/release_force = 0 var/throw_distance = 10 muzzle_flash = 0 fire_sound_text = "a launcher firing" //This normally uses a proc on projectiles and our ammo is not strictly speaking a projectile. /obj/item/weapon/gun/launcher/can_hit(var/mob/living/target as mob, var/mob/living/user as mob) return 1 //Override this to avoid a runtime with suicide handling. /obj/item/weapon/gun/launcher/handle_suicide(mob/living/user) to_chat(user, "Shooting yourself with \a [src] is pretty tricky. You can't seem to manage it.") return /obj/item/weapon/gun/launcher/proc/update_release_force(obj/item/projectile) return 0 /obj/item/weapon/gun/launcher/process_projectile(obj/item/projectile, mob/user, atom/target, var/target_zone, var/params=null, var/pointblank=0, var/reflex=0) update_release_force(projectile) projectile.loc = get_turf(user) projectile.throw_at(target, throw_distance, release_force, user) return 1