Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Marker obj and door opening for simple animals (currently only necromorphs) #10742

Merged
merged 7 commits into from Jun 28, 2016
Merged

Marker obj and door opening for simple animals (currently only necromorphs) #10742

merged 7 commits into from Jun 28, 2016

Conversation

gbasood
Copy link
Contributor

@gbasood gbasood commented Jun 24, 2016

Welcome to a really silly PR
Adds a marker object, which spawns xenomorphs out of people when it's anchored and they touch it with hands OR someone drags them onto it
Also the marker whispers periodically.

Also adds a flag that lets simple animals (currently only necromorphsmorphs) open doors when a player controlling them clicks on them or bumps them.

Things that would be cool to add but that I don't feel like doing because I'm tired as fuck:

  • Recruitment for necromorphs made without clients
  • Animated icon for marker instead of just glowing red while anchored
  • Hivespeak for necromorphs

Also NOT TESTED

@gbasood gbasood added Content Adds something. Neat! Needs Review labels Jun 24, 2016
@gbasood gbasood changed the title Marker obj and door opening for simple animals (currently only xenomo… Marker obj and door opening for simple animals (currently only necromorphs) Jun 24, 2016
@@ -267,9 +270,6 @@ var/global/list/alert_overlays_global = list()
if(check_access(ID))
access_granted = 1

var/answer = "Yes"
if(answer == "No")
return
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also I found this gem.
Seriously why does this exist

Copy link
Contributor

@Intigracy Intigracy Jun 24, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably put it in the wrong file and left it unfinished, it reminds me of the AI warning when it attempts to force open a firedoor.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like something that used to be an input.

@gbasood
Copy link
Contributor Author

gbasood commented Jun 24, 2016

I moved the file so the diff changed
@skullyton What's up with the gibbing and mindswapping? Say it out of the diff so I don't lose it

@ghost
Copy link

ghost commented Jun 24, 2016

Basically, at least what I've seen with how a staff of necromancy does it, if you hit a dead guy whose mind is still in the brain, it'll gib and attempt to transfer, but then they're caught in limbo between the head/brain and in the zombie.

@gbasood
Copy link
Contributor Author

gbasood commented Jun 24, 2016

note to self
test
also use mind.transfer_to

@ghost
Copy link

ghost commented Jun 24, 2016

It gets weirder when the zombie is killed, and somebody attempts to soul shard the head


var/ticks_not_whispered = 0
var/next_whisper = 300
var/whispers = list("...bring me flesh...", "...make us whole...", "...we must be whole...", "...join us in unity...", "...one mind, one soul, one flesh...", "...MAKE US WHOLE...")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't this be "bring us flesh" to keep in the same tune as the rest of the whispers?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes actually

@Intigracy
Copy link
Contributor

I don't really see anything else past my two comments.

@gbasood gbasood merged commit 0b38588 into vgstation-coders:Bleeding-Edge Jun 28, 2016
@gbasood
Copy link
Contributor Author

gbasood commented Jun 28, 2016

🍆

visible_message("[pick(whispers)]")
next_whisper = rand(NECROMARKER_MIN_WHISPER_INTERVAL, NECROMARKER_MAX_WHISPER_INTERVAL)
else
ticks_not_whispered++
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be using world time timestamps.

break
else
candidates -= O
visible_message("<span class='warning'>[src] spins the flesh and bone of [M] into a hellish monstrosity!</span>")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should have \the

Copy link
Member

@Exxion Exxion Jun 28, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't \the automatically added by BYOND when you use [src] (rather than [src.name])?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should still use \the IMO.

Copy link
Contributor

@Intigracy Intigracy Jun 28, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exxion, no, it's not.

If [src] is capitalized then it won't add a the automatically, it only adds the automatically to \improper named objects (which is automatically true if the word isn't capitalized).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's exactly how \the works anyway.

Copy link
Member

@Exxion Exxion Jun 28, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's wrong, though.
I just tested it.

image

image

There would be no point to \the acting the way you said, as it would be the same as just writing "the"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That I was wrong.
\the behaves as I said
It does not show up before things counted as proper nouns

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I see pictures now, didn't when I was on my phone.

Just tested myself too, I guess I was wrong.

Does \the even have a use then? I always figured it was just a failsafe and would add a the unless one was being automatically added due to improper nounage.

Using "The [src]" makes it turn into The the light replacer.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

\the is only automatically inserted if you put the object reference in directly, so [src] or something similar
NOT if you put in [src.name], etc.

if(O && O.mind && O.ckey)
O.mind.transfer_to(Z)
Z.ckey = O.ckey // Because ghosts don't get key changes
candidates -= O
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is copy pasted below, put it outside the if and remove copy paste + else clause.

@PJB3005
Copy link
Contributor

PJB3005 commented Jun 28, 2016

This is why we don't self merge.

log_game("[user]/[user.ckey] forcefully turned [M]/[M.ckey] into a necromorph.")
else
message_admins("[M]/[M.ckey] turned into a necromorph via a marker. (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[loc.x];Y=[loc.y];Z=[loc.z]'>JMP</A>)")
log_game("[M]/[M.ckey] turned into a necromorph.")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again!

@PJB3005
Copy link
Contributor

PJB3005 commented Jun 28, 2016

👏

@gbasood
Copy link
Contributor Author

gbasood commented Jun 28, 2016

as I've said elsewhere before the revert came up
I made this as a small feature and I didn't intend to make it anything more than it was
If someone wants to address the issues raised and add on this then by all means go for it
I don't intend to put more work into it

@ghost
Copy link

ghost commented Jun 28, 2016

After seeing it live

  • Both the dragger and the dragged need to be next to the marker for some reason
  • For some reason, it needs to be anchored like a machine, making dropping one in needing some preperation in wrenching it.
  • Necromorphs are slow, take about 5 shots from any sort of laser to kill, and take too long to regenerate to be of any use (sorry, my fault)
  • Necromorphs can't open doors that they don't have access to, meaning people can just run into maint and be safe, you'd think they'd be able to pull a door apart like any giant spider can

@gbasood
Copy link
Contributor Author

gbasood commented Jun 28, 2016

I also opened some other issues related to that round
#10822
#10821
#10820
#10819
#10818

Mostly just ideas, none of them fully necessary

@Intigracy
Copy link
Contributor

You should re-add the door opening seperately at least

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Content Adds something. Neat!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants