/datum/buildmode/reagents name = "Reagents (expose or add)" desc = {"***********************************************************
Left Mouse Button on mob/obj/turf = Expose target to reagent
Right Mouse Button on mob/obj/turf = Add 5 units of reagent to target
Right Mouse Button on buildmode = Select reagent
***********************************************************"} icon_state = "buildmode6" var/reagent_id var/datum/reagents/reagent_holder New() ..() reagent_holder = new(20) reagent_holder.my_atom = new /obj() click_mode_right(var/ctrl, var/alt, var/shift) var/nrid = get_one_match_string(input("Enter full (or part of) reagent ID", "Reagent ID", reagent_id), reagents_cache) if (nrid) reagent_id = nrid reagent_holder.clear_reagents() reagent_holder.add_reagent(reagent_id, 20) update_button_text(reagent_id) click_left(atom/object, var/ctrl, var/alt, var/shift) if (!reagent_id) return if (!(reagent_id in reagent_holder.reagent_list)) return var/datum/reagent/reagent = reagent_holder.reagent_list[reagent_id] blink(get_turf(object)) if(ismob(object)) reagent.reaction_mob(object, 1, 20) if(isobj(object)) reagent.reaction_obj(object, 20) if(isturf(object)) reagent.reaction_turf(object, 20) click_right(atom/object, var/ctrl, var/alt, var/shift) if (!object.reagents) var/datum/reagents/RE = new /datum/reagents(50) object.reagents = RE RE.my_atom = object if (!reagent_id) return if (object.reagents) object.reagents.add_reagent(reagent_id, 5) blink(get_turf(object))