Enhances the Smoking Experience - Adds Many New Item Interactions for Cigarettes and Items Interacting With Them (#25571)

* Refactoring and other stuff.

* moar

* More smoking

* Update energy_melee_weapons.dm

* Update code/game/objects/items/robot/cyborg_gripper.dm

Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Update cigs.dm

* Update cigs.dm

* Update cigs.dm

* Update code/game/objects/items/weapons/lighters.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* eee

* Apply suggestions from code review

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* sigh

* Update cigs.dm

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* hell

* Update cigs.dm

* aa

* cool

* Fixing some minor typos for cyborg upgrade flavour text

Throws in some missing apostrophes, capitalisation, and the letter "s."

* Briefcase Full of Cash buff

Increases the amount of cash in the Syndicate Briefcase Full of Cash from 600 Cr to 1000 Cr

* Reverts double-feature PR

* Reverts a broken revert

* Reverting again because Ebba told me to

* And reverting yet again

* Update robot_upgrades.dm

* aa

* aaa

* suffering

* Soon

* Is it done!? Am I finally free!?

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Update

* Update

* No longer assume the cig is in a mouth

* Update tools.dm

* Update pronouns.dm

* Fixing some minor typos for cyborg upgrade flavour text

Throws in some missing apostrophes, capitalisation, and the letter "s."

* Briefcase Full of Cash buff

Increases the amount of cash in the Syndicate Briefcase Full of Cash from 600 Cr to 1000 Cr

* Reverts double-feature PR

* Reverts a broken revert

* Reverting again because Ebba told me to

* And reverting yet again

* Update robot_upgrades.dm

* Fixing some minor typos for cyborg upgrade flavour text

Throws in some missing apostrophes, capitalisation, and the letter "s."

* Briefcase Full of Cash buff

Increases the amount of cash in the Syndicate Briefcase Full of Cash from 600 Cr to 1000 Cr

* Reverts double-feature PR

* Reverts a broken revert

* Reverting again because Ebba told me to

* And reverting yet again

* Update robot_upgrades.dm

* update

* Attack animations for sword lighting!

* Update

* indentation

* Update cigs.dm

* minor refactor

* Update items.dm

* Update items.dm

* Update welder.dm

* Update energy_melee_weapons.dm

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* refactor

* Update items.dm

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Fixing some minor typos for cyborg upgrade flavour text

Throws in some missing apostrophes, capitalisation, and the letter "s."

* Briefcase Full of Cash buff

Increases the amount of cash in the Syndicate Briefcase Full of Cash from 600 Cr to 1000 Cr

* Reverts double-feature PR

* Reverts a broken revert

* Reverting again because Ebba told me to

* And reverting yet again

* Update robot_upgrades.dm

* Update flamethrower.dm

* clipping

* Update legion_loot.dm

* anti attack check

* Fixes a zippo runtime

* Fixes evil runtime and stops unnecessary violence.

* Apply suggestions from code review

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Update based on review

* Update cigs.dm

* Update energy_melee_weapons.dm

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Update toys.dm

* Update energy_melee_weapons.dm

* Update legion_loot.dm

* Update code/game/objects/items/weapons/melee/energy_melee_weapons.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

---------

Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>
Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
This commit is contained in:
CRUNCH
2024-09-03 14:02:13 +01:00
committed by GitHub
parent c7340b09b5
commit 9ef47e7935
18 changed files with 929 additions and 389 deletions
+81 -24
View File
@@ -1,3 +1,16 @@
/*
CONTENTS:
1. Wand of Nothing
2. Wand of Death
3. Wand of Healing
4. Wand of Polymorph
5. Wand of Teleportation
6. Wand of Door Creation
7. Wand of Fireball
8. Wand of Slipping
9. Wand of Chaos
*/
/obj/item/gun/magic/wand
name = "wand of nothing"
desc = "It's not just a stick, it's a MAGIC stick!"
@@ -59,9 +72,8 @@
user.create_attack_log("<b>[key_name(user)]</b> zapped [user.p_themselves()] with a <b>[src]</b>")
add_attack_logs(user, user, "zapped [user.p_themselves()] with a [src]", ATKLOG_ALL)
/////////////////////////////////////
//WAND OF DEATH
/////////////////////////////////////
// WAND OF DEATH
/obj/item/gun/magic/wand/death
name = "wand of death"
@@ -85,9 +97,7 @@
user.adjustFireLoss(6969)
user.death(FALSE)
/////////////////////////////////////
//WAND OF HEALING
/////////////////////////////////////
// WAND OF HEALING
/obj/item/gun/magic/wand/resurrection
name = "wand of resurrection"
@@ -109,9 +119,8 @@
user.revive()
to_chat(user, "<span class='notice'>You feel great!</span>")
/////////////////////////////////////
//WAND OF POLYMORPH
/////////////////////////////////////
// WAND OF POLYMORPH
/obj/item/gun/magic/wand/polymorph
name = "wand of polymorph"
@@ -127,9 +136,8 @@
wabbajack(user)
charges--
/////////////////////////////////////
//WAND OF TELEPORTATION
/////////////////////////////////////
// WAND OF TELEPORTATION
/obj/item/gun/magic/wand/teleport
name = "wand of teleportation"
@@ -149,9 +157,8 @@
charges--
..()
/////////////////////////////////////
//WAND OF DOOR CREATION
/////////////////////////////////////
// WAND OF DOOR CREATION
/obj/item/gun/magic/wand/door
name = "wand of door creation"
@@ -168,9 +175,8 @@
charges--
..()
/////////////////////////////////////
//WAND OF FIREBALL
/////////////////////////////////////
// WAND OF FIREBALL
/obj/item/gun/magic/wand/fireball
name = "wand of fireball"
@@ -186,9 +192,61 @@
charges--
..()
/////////////////////////////////////
//WAND OF SLIPPING
/////////////////////////////////////
/obj/item/gun/magic/wand/fireball/attack(atom/target, mob/living/user)
if(!iscarbon(target))
return ..()
var/mob/living/M = target
if(cigarette_lighter_act(user, M))
return
if(M != user) // Do not blow yourself up!
return ..() // Blow everyone else up!
/obj/item/gun/magic/wand/fireball/cigarette_lighter_act(mob/living/user, mob/living/target, obj/item/direct_attackby_item)
var/obj/item/clothing/mask/cigarette/cig = ..()
if(!cig)
return !isnull(cig)
if(!charges)
to_chat(user, "<span class='warning'>[src] is out of charge!</span>")
return TRUE
if(prob(50) || user.mind.assigned_role == "Wizard")
if(target == user)
user.visible_message(
"<span class='warning'>Holy shit! Did [user] just manage to light [user.p_their()] [cig.name] with [src], with only moderate eyebrow singing!?</span>",
"<span class='notice'>You swish and flick [src], lighting [cig] with a plume of flame, whilst only moderately eyebrow singing your eyebrows.</span>",
"<span class='warning'>You hear a brief burst of flame!</span>"
)
else
user.visible_message(
"<span class='warning'>Holy shit! Did [user] just manage to light [cig] for [target] with [src], only moderately singing [target.p_their()] eyebrows!?</span>",
"<span class='notice'>You swish and flick [src] at [target], lighting [user.p_their()] [cig.name] with a plume of flame, whilst only moderately singing [target.p_their()] eyebrows.</span>",
"<span class='warning'>You hear a brief burst of flame!</span>"
)
cig.light(user, target)
return TRUE
// Oops...
user.visible_message(
"<span class='userdanger'>Unsure which end of [src] is which, [user] zaps [user.p_themselves()] with a fireball!</span>",
"<span class='userdanger'>Unsure which end of [src] is which, you accidentally zap yourself with a fireball!</span>",
"<span class='userdanger'>You hear a firey explosion!</span>"
)
explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2)
charges--
return TRUE
// This is needed to you don't try to perform an execution/suicide when lighting a cigarette.
/obj/item/gun/magic/wand/fireball/handle_suicide(mob/user, mob/living/carbon/human/target, params)
var/mask_item = target.get_item_by_slot(SLOT_HUD_WEAR_MASK)
if(istype(mask_item, /obj/item/clothing/mask/cigarette) && user.zone_selected == "mouth" && user.a_intent == INTENT_HELP)
return
. = ..()
// WAND OF SLIPPING
/obj/item/gun/magic/wand/slipping
name = "wand of slipping"
desc = "This wand shoots... banana peels?"
@@ -202,9 +260,8 @@
charges--
..()
/////////////////////////////////////
//WAND OF CHAOS - Only spawned by the Staff of Chaos as a rare random effect
/////////////////////////////////////
// WAND OF CHAOS - Only spawned by the Staff of Chaos as a rare random effect
/obj/item/gun/magic/wand/chaos
name = "wand of chaos"
desc = "Payback time!"