okay here I have another problem with this script.....and hopefully you are not tired of my rain of questions yet....
I figured out how to fix my previous issue but this is the next one:
On the ontransition event on the door I have put the tag of the character which it should check, so like this:
void main()
{
object oPC = GetClickingObject();
object oDoor = OBJECT_SELF;
object oFactionMember = GetObjectByTag("docks"); // members of faction DOCKS will recieve this tag.
int nRep = GetFactionAverageReputation(oFactionMember, oPC);
int nCheck = GetLocalInt(GetArea(GetTransitionTarget(oDoor)), "req_reputation"); // variable set on area, holding the check value
if(GetIsDM(oPC) || nRep >= nCheck) ExecuteScript("nw_g0_transition", oDoor);
else
{
string sWarning = "<cþ >I'm not allowed to enter, my reputation with guards is only "+
IntToString(nRep)+" when it should be at least "+IntToString(nCheck)+".</c>"; // red colored warning message example
FloatingTextStringOnCreature(sWarning, oPC);
}
}
So here is the issue the:
Using the tag on the door makes the rep count on the pc -1 for that faction and it won't go any higher, also it does not seem to recognise the rep count on the door either.
So here is the script I use to raise the rep based on quest ending in convo.
#include "nw_i0_plotwizard"
void main()
{
object oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "VillainHead");
DestroyObject(oItemToTake);
GiveGoldToCreature(GetPCSpeaker(), 150);
PWSetMinLocalIntPartyPCSpeaker("p000state_Daisy", 3);
PWSetMinLocalIntPartyPCSpeaker("p000state", 3);
PWGiveExperienceParty(GetPCSpeaker(), 250);
{
object oPC = GetPCSpeaker();
object oFacMember = GetObjectByTag("Daisy"); // OBJECT_SELF is better if they're the same
int PCCurrFac = GetFactionAverageReputation(oFacMember, oPC);
AdjustReputation(oPC, oFacMember, 10);
SendMessageToPC(oPC, "Your reputation has raised by 10 points with Dockside");
SendMessageToPC(oPC, "Your current reputation with Citizens is " + IntToString(PCCurrFac) + ".");
}
object oPC = GetPCSpeaker();
object oTarget;
oTarget = GetObjectByTag("Door_quest_1");
AssignCommand(oTarget, ActionCloseDoor(oTarget));
SetLocked(oTarget, TRUE);
}
well if anyone can help me figure this out? thanks in advance
'>