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

The player doesn't lose ore when paying protection money to Bloodwyn again #109

Closed
AmProsius opened this issue Feb 11, 2021 · 5 comments · Fixed by #138
Closed

The player doesn't lose ore when paying protection money to Bloodwyn again #109

AmProsius opened this issue Feb 11, 2021 · 5 comments · Fixed by #138
Labels
compatibility: easy This issue is easy to make compatible. impl: hook script func This issue requires hooking script functions. provided fix This issue has a fix provided in the comments. type: session fix The fix for this issues is persistent across a session. validation: validated This issue is still present even with Systempack/Union.
Milestone

Comments

@AmProsius
Copy link
Owner

Describe the bug
The player doesn't lose 10 ore if he chooses to pay the protection money to Bloodwyn again.

Expected behavior
The player now correctly loses 10 ore if he chooses to pay the protection money to Bloodwyn again.

@AmProsius
Copy link
Owner Author

func void Info_Bloodwyn_PayDay_PayAgain()
{
AI_Output (other, self,"Info_Bloodwyn_PayDay_PayAgain_15_00"); //Here, take it. 10 ore's not much among friends.
AI_Output (self, other,"Info_Bloodwyn_PayDay_PayAgain_08_01"); //My thoughts exactly!
Bloodwyn_ProtectionPaid = TRUE;
Herek_ProtectionBully = FALSE;
Grim_ProtectionBully = FALSE;
Npc_SetPermAttitude (self,ATT_FRIENDLY);
Info_ClearChoices (Info_Bloodwyn_PayDay );
};

changed to

func void Info_Bloodwyn_PayDay_PayAgain()
{
    AI_Output (other, self,"Info_Bloodwyn_PayDay_PayAgain_15_00"); //Here, take it. 10 ore's not much among friends.
    AI_Output (self, other,"Info_Bloodwyn_PayDay_PayAgain_08_01"); //My thoughts exactly!

    B_GiveInvItems      (other, self, itminugget, 10);
    Bloodwyn_ProtectionPaid = TRUE;
    Herek_ProtectionBully = FALSE;
    Grim_ProtectionBully = FALSE;
    Npc_SetPermAttitude (self,ATT_FRIENDLY);
    Info_ClearChoices   (Info_Bloodwyn_PayDay );
};

@AmProsius AmProsius added compatibility: difficult This issue is difficult to make compatible. type: session fix The fix for this issues is persistent across a session. provided fix This issue has a fix provided in the comments. validation: validated This issue is still present even with Systempack/Union. labels Feb 11, 2021
@AmProsius AmProsius added this to To Do in v1.0.0 Feb 13, 2021
@AmProsius AmProsius added this to the v1.0.0 milestone Feb 13, 2021
@szapp szapp added compatibility: easy This issue is easy to make compatible. and removed compatibility: difficult This issue is difficult to make compatible. labels Feb 13, 2021
@szapp
Copy link
Collaborator

szapp commented Feb 13, 2021

This could be implemented by wrapping around the function and determining whether the player has or has not lost ore.

szapp added a commit that referenced this issue Feb 23, 2021
@szapp szapp moved this from To Do to In Progress in v1.0.0 Feb 23, 2021
v1.0.0 automation moved this from In Progress to Done Feb 24, 2021
AmProsius added a commit that referenced this issue Feb 24, 2021
@AmProsius AmProsius added this to Dialog: Give items in Fix templates Mar 3, 2021
@szapp szapp added the impl: hook script func This issue requires hooking script functions. label Mar 16, 2021
szapp added a commit that referenced this issue Apr 20, 2021
@Quintus24
Copy link

Hello, everyone,

Again, sorry for spamming closed reports.

I still encounter this issue, at least when accepting to pay 10 Ore the first time.
Bloodwyn acknowledges the payment but the "give 10 Ore" string is not displayed nor is it deducted from the PC inventory.

However, after sleeping until next morning, Bloodwyn will ask for his daily contribution, if the PC pays, then the string is displayed and the ore is correctly deducted.

I think I'm confused by the initial dialogue, it's almost like the PC and Bloodwyn agree to this deal, but not actually paying him in that very moment.

Now that I think about it, I'm not sure if it is an actual issue.

I also checked the "fix status 109" command and it was displayed as being active.

Regards,
Quintus24

@szapp
Copy link
Collaborator

szapp commented May 1, 2022

From what I can tell in the scripts there should be no issue in the ore transaction for the first encounter dialog. This fix here is concerned with the transactions in the follow-up reminders. Could you provide the exact dialog tree in which there is a missing transaction? (The dialog choices of that dialog are quite numerous, so that would be of help.)

@Quintus24
Copy link

Quintus24 commented May 1, 2022

Hi, @szapp.

The dialogue is triggered by Bloodwyn when approached and it goes like this:

Bloodwyn: Hey, you!
PC: Now what?
Bloodwyn: The time's come for you to prove you're a true friend.
Bloodwyn: Just 10 ore, and you're in - what d'you say?
PC: I've changed my mind. I'm going to pay you the 10 ore after all.
Bloodwyn: There now! You see, you CAN make the right choices.
Bloodwyn: And from now on, you'll keep paying me your daily contribution, won't you?
PC: END

Just to clarify, this is not my first encounter with him, this is simply me finally accepting his offer.
When he first introduced himself and made the offer, in Chapter 1, I simply refused. I don't remember what he said then, but he wasn't happy.

Regards,
Quintus24

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compatibility: easy This issue is easy to make compatible. impl: hook script func This issue requires hooking script functions. provided fix This issue has a fix provided in the comments. type: session fix The fix for this issues is persistent across a session. validation: validated This issue is still present even with Systempack/Union.
Projects
Fix templates
Add item transaction to dialog
v1.0.0
  
Done
Development

Successfully merging a pull request may close this issue.

3 participants