Miss Sakaki Posted July 18, 2005 Share Posted July 18, 2005 When I test this script, the first lovetalk loops, though later talks seem to fire OK. What am I doing wrong? Here's the initial romance check: IF Global("NathMatch","GLOBAL",0) Global("CheckNathMatch","GLOBAL",0) Gender(Player1,MALE) Global("NathRomanceActive","GLOBAL",0) !Global("NathRomanceActive","GLOBAL",3) !Global("AerieRomanceActive","GLOBAL",2) !Global("JaheiraRomanceActive","GLOBAL",2) !Global("ViconiaRomanceActive","GLOBAL",2) !Global("SaerilethRomanceActive","GLOBAL",2) !Global("TashiaRomanceActive","GLOBAL",2) !Global("imoenromanceactive","GLOBAL",2) !Global("E3FadeRomanceActive","GLOBAL",2) !Class(Player1,THIEF_ALL) OR(3) Alignment(Player1,MASK_GOOD) Alignment(Player1,LAWFUL_NEUTRAL) Class(Player1,DRUID) OR(3) Race(Player1,HUMAN) Race(Player1,HALF_ELF) Race(Player1,ELF) THEN RESPONSE #100 SetGlobal("CheckNathMatch","GLOBAL",1) SetGlobal("NathMatch","GLOBAL",1) SetGlobal("NathRomanceActive","GLOBAL",1) SetGlobal("NathLoveTalk","LOCALS",1) RealSetGlobalTimer("NathLoveTalkTime","GLOBAL",1000) END And here are the lovetalk scripts: IF InParty(Myself) RealGlobalTimerExpired("NathLoveTalkTime","GLOBAL") Global("NathMatch","GLOBAL",1) !Global("FHPreTerlNoTalking","GLOBAL",1) !Global("FHPreBryceNoTalking","GLOBAL",1) !Global("NathRomanceActive","GLOBAL",3) !AreaType(DUNGEON) PartyRested() See(Player1) CombatCounter(0) OR(19) Global("NathLoveTalk","LOCALS",1) Global("NathLoveTalk","LOCALS",3) Global("NathLoveTalk","LOCALS",5) Global("NathLoveTalk","LOCALS",7) Global("NathLoveTalk","LOCALS",9) Global("NathLoveTalk","LOCALS",11) Global("NathLoveTalk","LOCALS",13) Global("NathLoveTalk","LOCALS",15) Global("NathLoveTalk","LOCALS",21) Global("NathLoveTalk","LOCALS",23) Global("NathLoveTalk","LOCALS",25) Global("NathLoveTalk","LOCALS",27) Global("NathLoveTalk","LOCALS",29) Global("NathLoveTalk","LOCALS",35) Global("NathLoveTalk","LOCALS",37) Global("NathLoveTalk","LOCALS",39) Global("NathLoveTalk","LOCALS",45) Global("NathLoveTalk","LOCALS",51) Global("NathLoveTalk","LOCALS",53) THEN RESPONSE #100 RealSetGlobalTimer("NathLoveTalkTime","GLOBAL",10) END IF InParty(Myself) RealGlobalTimerExpired("NathLoveTalkTime","GLOBAL") !Global("NathRomanceActive","GLOBAL",0) !Global("NathRomanceActive","GLOBAL",3) !Global("FHPreTerlNoTalking","GLOBAL",1) !Global("FHPreBryceNoTalking","GLOBAL",1) !Global("FHPreVampNoTalking","GLOBAL",1) !AreaCheck("AR1300") !AreaType(DUNGEON) See(Player1) CombatCounter(0) !See([ENEMY]) OR(19) Global("NathLoveTalk","LOCALS",1) Global("NathLoveTalk","LOCALS",3) Global("NathLoveTalk","LOCALS",5) Global("NathLoveTalk","LOCALS",7) Global("NathLoveTalk","LOCALS",9) Global("NathLoveTalk","LOCALS",11) Global("NathLoveTalk","LOCALS",13) Global("NathLoveTalk","LOCALS",15) Global("NathLoveTalk","LOCALS",21) Global("NathLoveTalk","LOCALS",23) Global("NathLoveTalk","LOCALS",25) Global("NathLoveTalk","LOCALS",27) Global("NathLoveTalk","LOCALS",29) Global("NathLoveTalk","LOCALS",35) Global("NathLoveTalk","LOCALS",37) Global("NathLoveTalk","LOCALS",39) Global("NathLoveTalk","LOCALS",45) Global("NathLoveTalk","LOCALS",51) Global("NathLoveTalk","LOCALS",53) THEN RESPONSE #100 IncrementGlobal("NathLoveTalk","LOCALS",1) MoveViewObject(Player1,INSTANT) Interact(Player1) END IF InParty(Myself) !Global("NathRomanceActive","GLOBAL",0) !Global("NathRomanceActive","GLOBAL",3) !Global("NathMatch","GLOBAL",1) !Global("FHPreTerlNoTalking","GLOBAL",1) !Global("FHPreBryceNoTalking","GLOBAL",1) !Global("FHPreVampNoTalking","GLOBAL",1) RealGlobalTimerExpired("NathLoveTalkTime","GLOBAL") OR(27) Global("NathLoveTalk","LOCALS",2) Global("NathLoveTalk","LOCALS",4) Global("NathLoveTalk","LOCALS",6) Global("NathLoveTalk","LOCALS",8) Global("NathLoveTalk","LOCALS",10) Global("NathLoveTalk","LOCALS",12) Global("NathLoveTalk","LOCALS",14) Global("NathLoveTalk","LOCALS",16) Global("NathLoveTalk","LOCALS",18) Global("NathLoveTalk","LOCALS",20) Global("NathLoveTalk","LOCALS",22) Global("NathLoveTalk","LOCALS",24) Global("NathLoveTalk","LOCALS",26) Global("NathLoveTalk","LOCALS",28) Global("NathLoveTalk","LOCALS",30) Global("NathLoveTalk","LOCALS",32) Global("NathLoveTalk","LOCALS",34) Global("NathLoveTalk","LOCALS",36) Global("NathLoveTalk","LOCALS",38) Global("NathLoveTalk","LOCALS",40) Global("NathLoveTalk","LOCALS",42) Global("NathLoveTalk","LOCALS",44) Global("NathLoveTalk","LOCALS",46) Global("NathLoveTalk","LOCALS",48) Global("NathLoveTalk","LOCALS",50) Global("NathLoveTalk","LOCALS",52) Global("NathLoveTalk","LOCALS",54) THEN RESPONSE #100 IncrementGlobal("NathLoveTalk","LOCALS",1) RealSetGlobalTimer("NathLoveTalkTime","GLOBAL",2400) END IF InParty(Myself) PartyRested() !Global("NathRomanceActive","GLOBAL",0) !Global("NathRomanceActive","GLOBAL",3) !Global("FHPreTerlNoTalking","GLOBAL",1) !Global("FHPreBryceNoTalking","GLOBAL",1) !Global("FHPreVampNoTalking","GLOBAL",1) Global("NathMatch","GLOBAL",1) !AreaType(DUNGEON) See(Player1) CombatCounter(0) OR(5) Global("NathLoveTalk","LOCALS",19) Global("NathLoveTalk","LOCALS",31) Global("NathLoveTalk","LOCALS",33) Global("NathLoveTalk","LOCALS",43) Global("NathLoveTalk","LOCALS",49) THEN RESPONSE #100 IncrementGlobal("NathLoveTalk","LOCALS",1) RealSetGlobalTimer("NathLoveTalkTime","GLOBAL",1) Interact(Player1) END Link to comment
Avenger Posted July 18, 2005 Share Posted July 18, 2005 What do you mean by looping, the 'nathlovetalk' variable loops or the dialog text loops. If it is the dialog text, then we have to see the dialog top level conditions too. Link to comment
Miss Sakaki Posted July 18, 2005 Author Share Posted July 18, 2005 The dialogue is the thing that loops - here are the conditions: IF ~Global("NathRomanceActive","GLOBAL",1) Global("NathLoveTalk","LOCALS",2) Global("NathMatch","GLOBAL",1) GlobalTimerExpired("NathLoveTalkTime)~ THEN BEGIN NathLT1 And here's the condition for the second lovetalk: IF ~Global("NathRomanceActive","GLOBAL",1) Global("NathLoveTalk","LOCALS",4) Global("NathMatch","GLOBAL",1) GlobalTimerExpired("NathLoveTalkTime","GLOBAL")~ THEN BEGIN NathLT2 Link to comment
jastey Posted July 20, 2005 Share Posted July 20, 2005 IF InParty(Myself) !Global("NathRomanceActive","GLOBAL",0) !Global("NathRomanceActive","GLOBAL",3) !Global("NathMatch","GLOBAL",1) !Global("FHPreTerlNoTalking","GLOBAL",1) !Global("FHPreBryceNoTalking","GLOBAL",1) !Global("FHPreVampNoTalking","GLOBAL",1) RealGlobalTimerExpired("NathLoveTalkTime","GLOBAL") OR(27) ... This block (the 4th in your first post) doesn't get executed because of the negotiation of the match case, i.e. the "NathLoveTalk" variable does not get incremented and the timer not newly set. Link to comment
Miss Sakaki Posted July 20, 2005 Author Share Posted July 20, 2005 Thankyou Jastey! I'll give it a go - fingers crossed... Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.