and that just leaves the modules folder
This commit is contained in:
+26
-12
@@ -137,7 +137,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
stack_trace("Invalid type [embedding.type] found in .embedding during /obj/item Initialize()")
|
||||
|
||||
/obj/item/Destroy()
|
||||
flags_1 &= ~DROPDEL_1 //prevent reqdels
|
||||
item_flags &= ~DROPDEL //prevent reqdels
|
||||
if(ismob(loc))
|
||||
var/mob/m = loc
|
||||
m.temporarilyRemoveItemFromInventory(src, TRUE)
|
||||
@@ -277,8 +277,17 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
if(!(interaction_flags_item & INTERACT_ITEM_ATTACK_HAND_PICKUP)) //See if we're supposed to auto pickup.
|
||||
return
|
||||
|
||||
//Heavy gravity makes picking up things very slow.
|
||||
var/grav = user.has_gravity()
|
||||
if(grav > STANDARD_GRAVITY)
|
||||
var/grav_power = min(3,grav - STANDARD_GRAVITY)
|
||||
to_chat(user,"<span class='notice'>You start picking up [src]...</span>")
|
||||
if(!do_mob(user,src,30*grav_power))
|
||||
return
|
||||
|
||||
|
||||
//If the item is in a storage item, take it out
|
||||
loc.SendSignal(COMSIG_TRY_STORAGE_TAKE, src, user.loc, TRUE)
|
||||
SEND_SIGNAL(loc, COMSIG_TRY_STORAGE_TAKE, src, user.loc, TRUE)
|
||||
|
||||
if(throwing)
|
||||
throwing.finalize(FALSE)
|
||||
@@ -300,7 +309,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
if(anchored)
|
||||
return
|
||||
|
||||
loc.SendSignal(COMSIG_TRY_STORAGE_TAKE, src, user.loc, TRUE)
|
||||
SEND_SIGNAL(loc, COMSIG_TRY_STORAGE_TAKE, src, user.loc, TRUE)
|
||||
|
||||
if(throwing)
|
||||
throwing.finalize(FALSE)
|
||||
@@ -351,14 +360,14 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
for(var/X in actions)
|
||||
var/datum/action/A = X
|
||||
A.Remove(user)
|
||||
if(DROPDEL_1 & flags_1)
|
||||
if(item_flags & DROPDEL)
|
||||
qdel(src)
|
||||
item_flags &= ~IN_INVENTORY
|
||||
SendSignal(COMSIG_ITEM_DROPPED,user)
|
||||
SEND_SIGNAL(src, COMSIG_ITEM_DROPPED,user)
|
||||
|
||||
// called just as an item is picked up (loc is not yet changed)
|
||||
/obj/item/proc/pickup(mob/user)
|
||||
SendSignal(COMSIG_ITEM_PICKUP, user)
|
||||
SEND_SIGNAL(src, COMSIG_ITEM_PICKUP, user)
|
||||
item_flags |= IN_INVENTORY
|
||||
|
||||
// called when "found" in pockets and storage items. Returns 1 if the search should end.
|
||||
@@ -371,7 +380,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
// for items that can be placed in multiple slots
|
||||
// note this isn't called during the initial dressing of a player
|
||||
/obj/item/proc/equipped(mob/user, slot)
|
||||
SendSignal(COMSIG_ITEM_EQUIPPED, user, slot)
|
||||
SEND_SIGNAL(src, COMSIG_ITEM_EQUIPPED, user, slot)
|
||||
for(var/X in actions)
|
||||
var/datum/action/A = X
|
||||
if(item_action_slot_check(slot, user)) //some items only give their actions buttons when in a specific slot.
|
||||
@@ -472,7 +481,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
else
|
||||
M.take_bodypart_damage(7)
|
||||
|
||||
M.SendSignal(COMSIG_ADD_MOOD_EVENT, "eye_stab", /datum/mood_event/eye_stab)
|
||||
SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "eye_stab", /datum/mood_event/eye_stab)
|
||||
|
||||
add_logs(user, M, "attacked", "[src.name]", "(INTENT: [uppertext(user.a_intent)])")
|
||||
|
||||
@@ -508,7 +517,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
|
||||
/obj/item/throw_impact(atom/A, datum/thrownthing/throwingdatum)
|
||||
if(A && !QDELETED(A))
|
||||
SendSignal(COMSIG_MOVABLE_IMPACT, A, throwingdatum)
|
||||
SEND_SIGNAL(src, COMSIG_MOVABLE_IMPACT, A, throwingdatum)
|
||||
if(is_hot() && isliving(A))
|
||||
var/mob/living/L = A
|
||||
L.IgniteMob()
|
||||
@@ -532,8 +541,8 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
/obj/item/proc/remove_item_from_storage(atom/newLoc) //please use this if you're going to snowflake an item out of a obj/item/storage
|
||||
if(!newLoc)
|
||||
return FALSE
|
||||
if(loc.SendSignal(COMSIG_CONTAINS_STORAGE))
|
||||
return loc.SendSignal(COMSIG_TRY_STORAGE_TAKE, src, newLoc, TRUE)
|
||||
if(SEND_SIGNAL(loc, COMSIG_CONTAINS_STORAGE))
|
||||
return SEND_SIGNAL(loc, COMSIG_TRY_STORAGE_TAKE, src, newLoc, TRUE)
|
||||
return FALSE
|
||||
|
||||
/obj/item/proc/get_belt_overlay() //Returns the icon used for overlaying the object on a belt
|
||||
@@ -596,7 +605,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
if(success)
|
||||
location = get_turf(M)
|
||||
if(isturf(location))
|
||||
location.hotspot_expose(flame_heat, 5)
|
||||
location.hotspot_expose(flame_heat, 1)
|
||||
|
||||
/obj/item/proc/ignition_effect(atom/A, mob/user)
|
||||
if(is_hot())
|
||||
@@ -780,3 +789,8 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
|
||||
appearance_flags &= ~NO_CLIENT_COLOR
|
||||
dropped(M)
|
||||
return ..()
|
||||
|
||||
/obj/item/throw_at(atom/target, range, speed, mob/thrower, spin=TRUE, diagonals_first = FALSE, var/datum/callback/callback)
|
||||
if (item_flags & NODROP)
|
||||
return
|
||||
return ..()
|
||||
|
||||
Reference in New Issue
Block a user