diff --git a/code/game/machinery/camera.dm b/code/game/machinery/camera.dm
index 52ae99dfcc..bf5b95f52a 100644
--- a/code/game/machinery/camera.dm
+++ b/code/game/machinery/camera.dm
@@ -305,7 +305,7 @@ var/global/list/obj/machinery/camera/Cameras = list()
else
P = W
itemname = P.name
- info = P.note
+ info = P.notehtml
U << "You hold \a [itemname] up to the camera ..."
for(var/mob/living/silicon/ai/O in world)
//if (O.current == src)
diff --git a/code/game/objects/devices/PDA/PDA.dm b/code/game/objects/devices/PDA/PDA.dm
index f046bb2c25..0402bd3664 100644
--- a/code/game/objects/devices/PDA/PDA.dm
+++ b/code/game/objects/devices/PDA/PDA.dm
@@ -32,7 +32,8 @@ var/global/list/obj/item/device/pda/PDAs = list()
var/ttone = "beep" //The ringtone!
var/honkamt = 0 //How many honks left when infected with honk.exe
var/mimeamt = 0 //How many silence left when infected with mime.exe
- var/note = "Congratulations, your station has chosen the Thinktronic 5230 Personal Data Assistant!" //Current note in the notepad function.
+ var/note = "" //Current note in the notepad function, without HTML.
+ var/notehtml = "Congratulations, your station has chosen the Thinktronic 5230 Personal Data Assistant!" //Current note in the notepad function, with HTML.
var/cart = "" //A place to stick cartridge menu information
var/detonate = 1 // Can the PDA be blown up?
@@ -333,7 +334,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
dat += " Lock
"
else
dat += " Edit
"
- dat += note
+ dat += notehtml
if (2)
dat += "
SpaceMessenger V3.9.4
"
@@ -536,6 +537,7 @@ var/global/list/obj/item/device/pda/PDAs = list()
if (in_range(src, U) && loc == U)
n = copytext(adminscrub(n), 1, MAX_MESSAGE_LEN)
if (mode == 1)
+ notehtml = dd_replacetext(n, "\n", "
")
note = n
else
U << browse(null, "window=pda")
diff --git a/code/game/objects/items/item.dm b/code/game/objects/items/item.dm
index 4134e2be4a..1cc863025f 100644
--- a/code/game/objects/items/item.dm
+++ b/code/game/objects/items/item.dm
@@ -130,6 +130,8 @@
var/mob/living/carbon/alien/A = user
if(!A.has_fine_manipulation || w_class >= 4)
+ if(src in A.contents) // To stop Aliens having items stuck in their pockets
+ A.drop_from_inventory(src)
user << "Your claws aren't capable of such fine manipulation."
return
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index fffdd12be5..6f7541d748 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -63,6 +63,8 @@
"White" = 3,
"Yellow" = 4,
)
+ var/longtermpower = 10
+ //var/debug = 0
/proc/RandomAPCWires()
//to make this not randomize the wires, just set index to 1 and increment it in the flag for loop (after doing everything else).
@@ -1016,6 +1018,9 @@
if(terminal && terminal.powernet)
perapc = terminal.powernet.perapc
+ //if(debug)
+ // world.log << "Status: [main_status] - Excess: [excess] - Last Equip: [lastused_equip] - Last Light: [lastused_light] - Longterm: [longtermpower]"
+
if(cell && !shorted)
// draw power from cell as before
@@ -1025,7 +1030,6 @@
if(excess > 0 || perapc > lastused_total) // if power excess, or enough anyway, recharge the cell
// by the same amount just used
-
cell.give(cellused)
add_load(cellused/CELLRATE) // add the load used to recharge the cell
@@ -1046,19 +1050,26 @@
lighting = autoset(lighting, 0)
environ = autoset(environ, 0)
+
// set channels depending on how much charge we have left
+ // Allow the APC to operate as normal if the cell can charge
+ if(charging && longtermpower < 10)
+ longtermpower += 1
+ else if(longtermpower > -10)
+ longtermpower -= 2
+
if(cell.charge <= 0) // zero charge, turn all off
equipment = autoset(equipment, 0)
lighting = autoset(lighting, 0)
environ = autoset(environ, 0)
area.poweralert(0, src)
- else if(cell.percent() < 15) // <15%, turn off lighting & equipment
+ else if(cell.percent() < 15 && longtermpower < 0) // <15%, turn off lighting & equipment
equipment = autoset(equipment, 2)
lighting = autoset(lighting, 2)
environ = autoset(environ, 1)
area.poweralert(0, src)
- else if(cell.percent() < 30) // <30%, turn off equipment
+ else if(cell.percent() < 30 && longtermpower < 0) // <30%, turn off equipment
equipment = autoset(equipment, 2)
lighting = autoset(lighting, 1)
environ = autoset(environ, 1)
diff --git a/html/changelog.html b/html/changelog.html
index 063bd0cac5..a31ff63505 100644
--- a/html/changelog.html
+++ b/html/changelog.html
@@ -55,6 +55,13 @@ should be listed in the changelog upon commit tho. Thanks. -->
Supply shuttle arrival time reduced to 2 minutes
Hopefully fixed the toy haul problem which made it possible to get a million toys from arcade machines.
+ Giacom updated:
+
+ - You can now make newlines with your PDA notes.
+ - You can now research and build the Light Replacer.
+ - You can now store donuts in the donut box. The next donut you pull out will be the last one you put in.
+ - APCs will auto-turn on if there is enough power in the grid, even if the powercell is below 30%. The APC needs to be charged for a long enough time before it starts turning equipment on, to avoid spazzing out. If you have any problems with it, such as equipment turning off and on repeatedly then please make an issue report with a screenshot of the APC.
+