scemino / engge

Open source remake of Thimbleweed Park's engine
https://scemino.github.io/
MIT License
148 stars 15 forks source link

Ransome does not want to give the theremin record to anyone #193

Closed scemino closed 4 years ago

scemino commented 4 years ago

When fixing this issue, it created a regression: #195.

scemino commented 4 years ago

I don't know how to fix this one, because the record has this code:

thereminRecord =
{
verbGive = function(actor)
 {
 if ((g.easy_mode == NO)) {
 if ( actor == willie ) {
 sayLine(willie, "@27145")
 } else {
 sayLineKeepForSomeoneElse(this)
 }
 } else {
 sayLineTheyDontWant(actor, this)   
 }
 }
}

So when Ransome gives the record, he says: sayLineKeepForSomeoneElse(this) which corresponds to I'm keeping it for a special *beeping* someone.

I found an idea, maybe it's to prevent giving an object to non playable character, if it was possible to give it a NPC, we wouldn't be able to get the object back, so it makes sense. So my idea is to test if the actor is selectable, if not we call this verbGive function.