miscellaneous rusk tweaks and fixes including: resolved assembly sprite hiding under things, resolved compressor not producing assemblies with the right amount of matter, made injectors able to be rotated, removed cooldown from injector to port assembly swap, made ejected/created assemblies not appear in the middle of walls (being created from wall-mounted machinery),

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
This commit is contained in:
Cael_Aislinn
2013-05-19 19:05:51 +10:00
parent 1d9fe082d7
commit 751adf7187
6 changed files with 39 additions and 35 deletions

View File

@@ -282,6 +282,6 @@ max volume of plasma storeable by the field = the total volume of a number of ti
return 0 return 0
/obj/machinery/power/rust_core/bullet_act(var/obj/item/projectile/Proj) /obj/machinery/power/rust_core/bullet_act(var/obj/item/projectile/Proj)
if(Proj.flag != "bullet" && owned_field) if(owned_field)
owned_field.AddEnergy(Proj.damage, 0, 1) return owned_field.bullet_act(Proj)
return 0 return 0

View File

@@ -5,6 +5,7 @@
name = "Fuel Rod Assembly" name = "Fuel Rod Assembly"
var/list/rod_quantities var/list/rod_quantities
var/percent_depleted = 1 var/percent_depleted = 1
layer = 3.1
// //
New() New()
rod_quantities = new/list rod_quantities = new/list

View File

@@ -64,14 +64,14 @@
/obj/machinery/rust_fuel_assembly_port/proc/eject_assembly() /obj/machinery/rust_fuel_assembly_port/proc/eject_assembly()
if(cur_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 cur_assembly = null
icon_state = "port0" icon_state = "port0"
return 1 return 1
/obj/machinery/rust_fuel_assembly_port/proc/try_draw_assembly() /obj/machinery/rust_fuel_assembly_port/proc/try_draw_assembly()
var/success = 0 var/success = 0
if(cur_assembly) if(!cur_assembly)
var/turf/check_turf = get_step(get_turf(src), src.dir) var/turf/check_turf = get_step(get_turf(src), src.dir)
check_turf = get_step(check_turf, src.dir) check_turf = get_step(check_turf, src.dir)
for(var/obj/machinery/power/rust_fuel_injector/I in check_turf) for(var/obj/machinery/power/rust_fuel_injector/I in check_turf)
@@ -89,31 +89,14 @@
I.cur_assembly = null I.cur_assembly = null
icon_state = "port1" icon_state = "port1"
success = 1 success = 1
break
return success 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() /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 category = "Object"
set src in oview(1) 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()
*/

View File

@@ -4,7 +4,7 @@ var/const/max_assembly_amount = 300
icon = 'code/WorkInProgress/Cael_Aislinn/Rust/rust.dmi' icon = 'code/WorkInProgress/Cael_Aislinn/Rust/rust.dmi'
icon_state = "fuel_compressor1" icon_state = "fuel_compressor1"
name = "Fuel Compressor" 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 var/compressed_matter = 0
anchored = 1 anchored = 1
layer = 2.9 layer = 2.9
@@ -79,12 +79,16 @@ var/const/max_assembly_amount = 300
var/fail = 0 var/fail = 0
var/old_matter = compressed_matter var/old_matter = compressed_matter
for(var/reagent in new_assembly_quantities) 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]" //world << "[reagent] matter: [req_matter]/[compressed_matter]"
if(req_matter <= compressed_matter) if(req_matter <= compressed_matter)
F.rod_quantities[reagent] = new_assembly_quantities[reagent] F.rod_quantities[reagent] = new_assembly_quantities[reagent]
compressed_matter -= req_matter compressed_matter -= req_matter
if(compressed_matter < 1)
compressed_matter = 0
else 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 fail = 1
break break
//world << "\blue [reagent]: new_assembly_quantities[reagent]<br>" //world << "\blue [reagent]: new_assembly_quantities[reagent]<br>"
@@ -93,7 +97,7 @@ var/const/max_assembly_amount = 300
compressed_matter = old_matter compressed_matter = old_matter
usr << "\red \icon[src] [src] flashes red: \'Out of matter.\'" usr << "\red \icon[src] [src] flashes red: \'Out of matter.\'"
else 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 F.percent_depleted = 0
if(compressed_matter < 0.034) if(compressed_matter < 0.034)
compressed_matter = 0 compressed_matter = 0

View File

@@ -179,11 +179,7 @@
id_tag = input("Enter new ID tag", "Modifying ID tag") as text|null id_tag = input("Enter new ID tag", "Modifying ID tag") as text|null
if( href_list["fuel_assembly"] ) if( href_list["fuel_assembly"] )
if(!trying_to_swap_fuel) attempt_fuel_swap()
trying_to_swap_fuel = 1
spawn(50)
attempt_fuel_swap()
trying_to_swap_fuel = 0
if( href_list["emergency_fuel_assembly"] ) if( href_list["emergency_fuel_assembly"] )
if(cur_assembly) if(cur_assembly)
@@ -290,3 +286,23 @@
updateDialog() updateDialog()
else else
src.visible_message("\red \icon[src] a red light flashes on [src].") 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)

View File

@@ -34,16 +34,16 @@
/obj/effect/rust_particle_catcher/proc/UpdateSize() /obj/effect/rust_particle_catcher/proc/UpdateSize()
if(parent.size >= mysize) if(parent.size >= mysize)
density = 1 density = 1
invisibility = 0 //invisibility = 0
name = "collector [mysize] ON" name = "collector [mysize] ON"
else else
density = 0 density = 0
invisibility = 101 //invisibility = 101
name = "collector [mysize] OFF" name = "collector [mysize] OFF"
/obj/effect/rust_particle_catcher/bullet_act(var/obj/item/projectile/Proj) /obj/effect/rust_particle_catcher/bullet_act(var/obj/item/projectile/Proj)
if(Proj.flag != "bullet" && parent) if(Proj.flag != "bullet" && parent)
parent.AddEnergy(Proj.damage, 0, 1) parent.AddEnergy(Proj.damage * 20, 0, 1)
update_icon() update_icon()
return 0 return 0