diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/core_gen.dm b/code/WorkInProgress/Cael_Aislinn/Rust/core_gen.dm index 438894ca865..72dddd6fe06 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/core_gen.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/core_gen.dm @@ -282,6 +282,6 @@ max volume of plasma storeable by the field = the total volume of a number of ti return 0 /obj/machinery/power/rust_core/bullet_act(var/obj/item/projectile/Proj) - if(Proj.flag != "bullet" && owned_field) - owned_field.AddEnergy(Proj.damage, 0, 1) + if(owned_field) + return owned_field.bullet_act(Proj) return 0 diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly.dm b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly.dm index bbd374a21e4..d8ca364cb20 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly.dm @@ -5,6 +5,7 @@ name = "Fuel Rod Assembly" var/list/rod_quantities var/percent_depleted = 1 + layer = 3.1 // New() rod_quantities = new/list diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly_port.dm b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly_port.dm index 3d88307242e..7c976ac9564 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly_port.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_assembly_port.dm @@ -64,14 +64,14 @@ /obj/machinery/rust_fuel_assembly_port/proc/eject_assembly() if(cur_assembly) - cur_assembly.loc = get_step(get_turf(src), src.dir) + cur_assembly.loc = src.loc//get_step(get_turf(src), src.dir) cur_assembly = null icon_state = "port0" return 1 /obj/machinery/rust_fuel_assembly_port/proc/try_draw_assembly() var/success = 0 - if(cur_assembly) + if(!cur_assembly) var/turf/check_turf = get_step(get_turf(src), src.dir) check_turf = get_step(check_turf, src.dir) for(var/obj/machinery/power/rust_fuel_injector/I in check_turf) @@ -89,31 +89,14 @@ I.cur_assembly = null icon_state = "port1" success = 1 + break return success -/* -/obj/machinery/rust_fuel_assembly_port/verb/try_insert_assembly_verb() - set name = "Attempt to insert assembly from port into injector" - set category = "Object" - set src in oview(1) - - if(!busy) - try_insert_assembly() - /obj/machinery/rust_fuel_assembly_port/verb/eject_assembly_verb() - set name = "Attempt to eject assembly from port" + set name = "Eject assembly from port" set category = "Object" set src in oview(1) - if(!busy) - eject_assembly() + eject_assembly() -/obj/machinery/rust_fuel_assembly_port/verb/try_draw_assembly_verb() - set name = "Draw assembly from injector" - set category = "Object" - set src in oview(1) - - if(!busy) - try_draw_assembly() -*/ diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_compressor.dm b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_compressor.dm index cfade3ab2ac..526742aac94 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_compressor.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_compressor.dm @@ -4,7 +4,7 @@ var/const/max_assembly_amount = 300 icon = 'code/WorkInProgress/Cael_Aislinn/Rust/rust.dmi' icon_state = "fuel_compressor1" name = "Fuel Compressor" - var/list/new_assembly_quantities = list("Deuterium" = 200,"Tritium" = 100,"Helium-3" = 0,"Lithium-6" = 0,"Silver" = 0) + var/list/new_assembly_quantities = list("Deuterium" = 150,"Tritium" = 150,"Rodinium-6" = 0,"Stravium-7" = 0, "Pergium" = 0, "Dilithium" = 0) var/compressed_matter = 0 anchored = 1 layer = 2.9 @@ -79,12 +79,16 @@ var/const/max_assembly_amount = 300 var/fail = 0 var/old_matter = compressed_matter for(var/reagent in new_assembly_quantities) - var/req_matter = new_assembly_quantities[reagent] / 30 + var/req_matter = round(new_assembly_quantities[reagent] / 30) //world << "[reagent] matter: [req_matter]/[compressed_matter]" if(req_matter <= compressed_matter) F.rod_quantities[reagent] = new_assembly_quantities[reagent] compressed_matter -= req_matter + if(compressed_matter < 1) + compressed_matter = 0 else + /*world << "bad reagent: [reagent], [req_matter > compressed_matter ? "req_matter > compressed_matter"\ + : (req_matter < compressed_matter ? "req_matter < compressed_matter" : "req_matter == compressed_matter")]"*/ fail = 1 break //world << "\blue [reagent]: new_assembly_quantities[reagent]
" @@ -93,7 +97,7 @@ var/const/max_assembly_amount = 300 compressed_matter = old_matter usr << "\red \icon[src] [src] flashes red: \'Out of matter.\'" else - F.loc = get_step(get_turf(src), src.dir) + F.loc = src.loc//get_step(get_turf(src), src.dir) F.percent_depleted = 0 if(compressed_matter < 0.034) compressed_matter = 0 diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_injector.dm b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_injector.dm index 6d18b71f4cb..5047ab1a5d1 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/fuel_injector.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/fuel_injector.dm @@ -179,11 +179,7 @@ id_tag = input("Enter new ID tag", "Modifying ID tag") as text|null if( href_list["fuel_assembly"] ) - if(!trying_to_swap_fuel) - trying_to_swap_fuel = 1 - spawn(50) - attempt_fuel_swap() - trying_to_swap_fuel = 0 + attempt_fuel_swap() if( href_list["emergency_fuel_assembly"] ) if(cur_assembly) @@ -290,3 +286,23 @@ updateDialog() else src.visible_message("\red \icon[src] a red light flashes on [src].") + +/obj/machinery/power/rust_fuel_injector/verb/rotate_clock() + set category = "Object" + set name = "Rotate Generator (Clockwise)" + set src in view(1) + + if (usr.stat || usr.restrained() || anchored) + return + + src.dir = turn(src.dir, 90) + +/obj/machinery/power/rust_fuel_injector/verb/rotate_anticlock() + set category = "Object" + set name = "Rotate Generator (Counterclockwise)" + set src in view(1) + + if (usr.stat || usr.restrained() || anchored) + return + + src.dir = turn(src.dir, -90) \ No newline at end of file diff --git a/code/WorkInProgress/Cael_Aislinn/Rust/virtual_particle_catcher.dm b/code/WorkInProgress/Cael_Aislinn/Rust/virtual_particle_catcher.dm index 60301334736..39110653848 100644 --- a/code/WorkInProgress/Cael_Aislinn/Rust/virtual_particle_catcher.dm +++ b/code/WorkInProgress/Cael_Aislinn/Rust/virtual_particle_catcher.dm @@ -34,16 +34,16 @@ /obj/effect/rust_particle_catcher/proc/UpdateSize() if(parent.size >= mysize) density = 1 - invisibility = 0 + //invisibility = 0 name = "collector [mysize] ON" else density = 0 - invisibility = 101 + //invisibility = 101 name = "collector [mysize] OFF" /obj/effect/rust_particle_catcher/bullet_act(var/obj/item/projectile/Proj) if(Proj.flag != "bullet" && parent) - parent.AddEnergy(Proj.damage, 0, 1) + parent.AddEnergy(Proj.damage * 20, 0, 1) update_icon() return 0