PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage ED-E Script



Wulfy301
27.10.2012, 14:04
Ich möchte die Wartezeit von ED-E's Upgrade auf einen Tag verkürzen (wenn möglich) und im vDialogueEDESCRIPT müsste man die Wartezeit einstellen können, aber ich habe keine Ahnung wie.

if iEDEOut == 1 && iEDEDays == 0
set iEDEDays to GameDaysPassed
set iEDEOut to 2
elseif iEDEOut == 2
if GameDaysPassed - iEDEDays >= 3
setquestdelay vDialogueEDE .1
set iEDEOut to 3
endif

Hier das ganze Script:


scn vDialogueEDESCRIPT

int iLogsPlayed ;The number of EDE Logs Played
float fLastLogDay ; The Day the last log was played on
short iEDEDaysPassed ; The Number of Days that have passed
int iPlayRadio ;
int iEdeRadio ; Which radio conversation EDE should play
int iEDEOut ; EDE Out for upgrades
int iEDEDays ; What day EDE was taken
int iHVUpgrade ; Upgraded at Hidden Valley
int iFolUpgrade ; Upgraded at Followers
int iAprilDead ;
int iCounter
int bEDEExamined
int bGibsonOnce ; Only one update from Old Lady Gibson
int iDoOnce
int bCompleteOnce ; When ED-E's quest completed, reward XP if it hasn't been rewarded

begin GameMode
if iAprilDead == 0 && vfsEDEScientistRef.GetDead == 1
set iAprilDead to 1
setobjectivedisplayed vDialogueEDE 30 0
setobjectivedisplayed vDialogueEDE 7 0
endif
if GetQuestCompleted vDialogueEDE == 0 && VFSEDEScientistRef.GetDead == 1 && HVKnightEDERef.GetDead == 1
setStage vDialogueEDE 100
endif
if GetQuestCompleted vDialogueEDE == 1 && GetStage VdialogueEDE < 100 && bCompleteOnce == 0
set bCompleteOnce to 1
rewardXP 100
endif
set iCounter to iCounter + 1
if iFolUpgrade == 1
EDE2Ref.AddItemHealthPercent EDEZapGunUpgrade 1 .9
EDE2Ref.AddItem AmmoSmallEnergyCellRobot 1
EDE1Ref.RemoveAllItems EDE2Ref
EDE1REF.Disable 1
EDE1Ref.MoveTo EDE1RefMarker
set iEDEOut to 1
vFSEDEScientistRef.disable 1
enableplayercontrols
set iFolUpgrade to 2
set VNPCFollowers.bEDEHired to 0
set VNPCFollowers.bEDEFired to 1
set VNPCFollowers.bCritterInParty to 0
EDE1REF.SetPlayerTeammate 0
EDE2REF.SetPlayerTeammate 0
EDE3REF.SetPlayerTeammate 0
set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers - 1)
EDE1Ref.removeperk CompanionSuite
EDE2Ref.removeperk CompanionSuite
EDE3Ref.removeperk CompanionSuite
player.removeperk EnhancedSensors
setQuestDelay vDialogueEDE 5
showmessage FollowerMessagePerkEDERemove
elseif iHVUpgrade == 1
EDE3Ref.AddItemHealthPercent EDEZapGun 1 .9
EDE3Ref.AddItem AmmoSmallEnergyCellRobot 1
EDE1Ref.RemoveAllItems EDE3Ref
set iHVUpgrade to 2
ede1Ref.Disable
EDE1Ref.MoveTo EDE1RefMarker
set iEDEOut to 1
enableplayercontrols
HVKnightEDERef.disable 1
VFSEDEScientistREF.disable
set VNPCFollowers.bEDEHired to 0
set VNPCFollowers.bEDEFired to 1
EDE1REF.SetPlayerTeammate 0
EDE2REF.SetPlayerTeammate 0
EDE3REF.SetPlayerTeammate 0
set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers - 1)
EDE1Ref.removeperk CompanionSuite
EDE2Ref.removeperk CompanionSuite
EDE3Ref.removeperk CompanionSuite
player.removeperk EnhancedSensors
set VNPCFollowers.bCritterInParty to 0
setquestdelay vDialogueEDE 5
showmessage FollowerMessagePerkEDERemove
endif
if fLastLogDay >= 0
set iEDEDaysPassed to GameDaysPassed - fLastLogDay
endif
if iEDEDaysPassed >= 2 && iLogsPlayed >= 2 && iPlayRadio == 0 && vNPCFollowers.bEDEHired
set iPlayRadio to 1
if HVKnightEDERef.GetDead ; Hidden Valley Knight is Dead
;EDE1Ref.startconversation player EDERadioConversation4
set iEDERadio to 4
EDE1Ref.evp
elseif GetStage VMS55 > 0 && HVKnightEDERef.GetDead == 0 ; Player has been to Hidden Valley
;EDE1Ref.startconversation player EDERadioConversation
set iEDERadio to 1
EDE1Ref.evp
else
;EDE1Ref.startconversation player EDERadioConversation2
set iEDERadio to 2
EDE1Ref.evp
set iPlayRadio to 2
endif
endif
if iPlayRadio == 2 && (GetObjectiveDisplayed vDialogueEDE 13 == 1 || GetObjectiveDisplayed vDialogueEDE 15 == 1) && HiddenValleyMarkerREF.GetMapMarkerVisible == 2 && vNPCFollowers.bEDEHired == 1
;EDE1Ref.startconversation player EDERadioConversation3
set iEDERadio to 3
EDE1Ref.evp
set iPlayRadio to 3
endif
if GetObjectiveDisplayed vDialogueEDE 10 == 1 && GetObjectiveCompleted vDialogueEDE 10 == 0 && gethasnote HVPatrolNote01 && GetObjectiveCompleted vDialogueEDE 12 == 0
setObjectiveCompleted vDialogueEDE 10 1
setObjectiveDisplayed vDialogueEDE 12 1
setObjectiveCompleted vDialogueEDE 12 1
setObjectiveDisplayed vDialogueEDE 13 1
setObjectiveCompleted vDialogueEDE 13 1
setObjectiveDisplayed vDialogueEDE 15 1
endif
if GetStage VMS55 > 0 && GetObjectiveDisplayed vDialogueEDE 13 == 1 && GetObjectiveDisplayed vDialogueEDE 15 == 0
setobjectivecompleted vDialogueEDE 13 1
setobjectivedisplayed vDialogueEDE 15 1
endif
if iEDEOut == 1 && iEDEDays == 0
set iEDEDays to GameDaysPassed
set iEDEOut to 2
elseif iEDEOut == 2
if GameDaysPassed - iEDEDays >= 3
setquestdelay vDialogueEDE .1
set iEDEOut to 3
endif
elseif iEDEOut == 4 && iDoOnce == 0 && player.getincell PrimmNashResidence == 0
set iDoOnce to 1
showmessage FollowerMessageLeaveEDE
if iHVUpgrade != 0
ede3ref.enable
elseif iFolUpgrade != 0
ede2ref.enable
endif
HVKnightEDERef.enable
setquestdelay vDialogueEDE 5
if GetObjectiveDisplayed vDialogueEDE 35
setobjectivecompleted vDialogueEDE 35 1
elseif GetObjectiveDisplayed vDialogueEDE 25
setobjectivecompleted vDialogueEDE 25 1
endif
setobjectivecompleted vDialogueEDE 60 1
setobjectivedisplayed vDialogueEDE 60 1
endif
if GetObjectiveDisplayed vDialogueEDE 12 && GetObjectiveCompleted vDialogueEDE 12 == 0 && GetHasNote HVPatrolNote01
setobjectivecompleted vDialogueEDE 12 1
setobjectivedisplayed vDialogueEDE 13 1
endif
end

begin Menumode
if iEDEOut == 3
if iHVUpgrade != 0
ede3ref.moveto EDEHomeMarker
elseif iFolUpgrade != 0
ede2ref.moveto EDEHomeMarker
endif
set iEDEOut to 4
endif
end

Wulfy301
01.11.2012, 19:56
Geschafft!
Um die 5 Tage Wartezeit für den zweiten Logeintrag zu verkürzen, muss man die im Bild blau hervorgehobene Zeile (original Wert ist 5 ) auf 0 setzen.

16539

Die zwei Tage Wartezeit nach dem zweiten Log, kann man hier auf 0 Wartezeit setzen ->

if iEDEDaysPassed >= 0 && iLogsPlayed >= 2 && iPlayRadio == 0 && vNPCFollowers.bEDEHired

Bis ED-E fertig aufgerüstet ist vergehen im Spiel 9 Tage, wenn man den Wert hier auf 1 setzt, dauert es nur einen Tag ->

if GameDaysPassed - iEDEDays >= 1

Hier das ganze angepasste Script

scn vDialogueEDESCRIPT

int iLogsPlayed ;The number of EDE Logs Played
float fLastLogDay ; The Day the last log was played on
short iEDEDaysPassed ; The Number of Days that have passed
int iPlayRadio ;
int iEdeRadio ; Which radio conversation EDE should play
int iEDEOut ; EDE Out for upgrades
int iEDEDays ; What day EDE was taken
int iHVUpgrade ; Upgraded at Hidden Valley
int iFolUpgrade ; Upgraded at Followers
int iAprilDead ;
int iCounter
int bEDEExamined
int bGibsonOnce ; Only one update from Old Lady Gibson
int iDoOnce
int bCompleteOnce ; When ED-E's quest completed, reward XP if it hasn't been rewarded

begin GameMode
if iAprilDead == 0 && vfsEDEScientistRef.GetDead == 1
set iAprilDead to 1
setobjectivedisplayed vDialogueEDE 30 0
setobjectivedisplayed vDialogueEDE 7 0
endif
if GetQuestCompleted vDialogueEDE == 0 && VFSEDEScientistRef.GetDead == 1 && HVKnightEDERef.GetDead == 1
setStage vDialogueEDE 100
endif
if GetQuestCompleted vDialogueEDE == 1 && GetStage VdialogueEDE < 100 && bCompleteOnce == 0
set bCompleteOnce to 1
rewardXP 100
endif
set iCounter to iCounter + 1
if iFolUpgrade == 1
EDE2Ref.AddItemHealthPercent EDEZapGunUpgrade 1 .9
EDE2Ref.AddItem AmmoSmallEnergyCellRobot 1
EDE1Ref.RemoveAllItems EDE2Ref
EDE1REF.Disable 1
EDE1Ref.MoveTo EDE1RefMarker
set iEDEOut to 1
vFSEDEScientistRef.disable 1
enableplayercontrols
set iFolUpgrade to 2
set VNPCFollowers.bEDEHired to 0
set VNPCFollowers.bEDEFired to 1
set VNPCFollowers.bCritterInParty to 0
EDE1REF.SetPlayerTeammate 0
EDE2REF.SetPlayerTeammate 0
EDE3REF.SetPlayerTeammate 0
set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers - 1)
EDE1Ref.removeperk CompanionSuite
EDE2Ref.removeperk CompanionSuite
EDE3Ref.removeperk CompanionSuite
player.removeperk EnhancedSensors
setQuestDelay vDialogueEDE 5
showmessage FollowerMessagePerkEDERemove
elseif iHVUpgrade == 1
EDE3Ref.AddItemHealthPercent EDEZapGun 1 .9
EDE3Ref.AddItem AmmoSmallEnergyCellRobot 1
EDE1Ref.RemoveAllItems EDE3Ref
set iHVUpgrade to 2
ede1Ref.Disable
EDE1Ref.MoveTo EDE1RefMarker
set iEDEOut to 1
enableplayercontrols
HVKnightEDERef.disable 1
VFSEDEScientistREF.disable
set VNPCFollowers.bEDEHired to 0
set VNPCFollowers.bEDEFired to 1
EDE1REF.SetPlayerTeammate 0
EDE2REF.SetPlayerTeammate 0
EDE3REF.SetPlayerTeammate 0
set VNPCFollowers.nCurrentFollowers to (VNPCFollowers.nCurrentFollowers - 1)
EDE1Ref.removeperk CompanionSuite
EDE2Ref.removeperk CompanionSuite
EDE3Ref.removeperk CompanionSuite
player.removeperk EnhancedSensors
set VNPCFollowers.bCritterInParty to 0
setquestdelay vDialogueEDE 5
showmessage FollowerMessagePerkEDERemove
endif
if fLastLogDay >= 0
set iEDEDaysPassed to GameDaysPassed - fLastLogDay
endif
if iEDEDaysPassed >= 0 && iLogsPlayed >= 2 && iPlayRadio == 0 && vNPCFollowers.bEDEHired
set iPlayRadio to 1
if HVKnightEDERef.GetDead ; Hidden Valley Knight is Dead
;EDE1Ref.startconversation player EDERadioConversation4
set iEDERadio to 4
EDE1Ref.evp
elseif GetStage VMS55 > 0 && HVKnightEDERef.GetDead == 0 ; Player has been to Hidden Valley
;EDE1Ref.startconversation player EDERadioConversation
set iEDERadio to 1
EDE1Ref.evp
else
;EDE1Ref.startconversation player EDERadioConversation2
set iEDERadio to 2
EDE1Ref.evp
set iPlayRadio to 2
endif
endif
if iPlayRadio == 2 && (GetObjectiveDisplayed vDialogueEDE 13 == 1 || GetObjectiveDisplayed vDialogueEDE 15 == 1) && HiddenValleyMarkerREF.GetMapMarkerVisible == 2 && vNPCFollowers.bEDEHired == 1
;EDE1Ref.startconversation player EDERadioConversation3
set iEDERadio to 3
EDE1Ref.evp
set iPlayRadio to 3
endif
if GetObjectiveDisplayed vDialogueEDE 10 == 1 && GetObjectiveCompleted vDialogueEDE 10 == 0 && gethasnote HVPatrolNote01 && GetObjectiveCompleted vDialogueEDE 12 == 0
setObjectiveCompleted vDialogueEDE 10 1
setObjectiveDisplayed vDialogueEDE 12 1
setObjectiveCompleted vDialogueEDE 12 1
setObjectiveDisplayed vDialogueEDE 13 1
setObjectiveCompleted vDialogueEDE 13 1
setObjectiveDisplayed vDialogueEDE 15 1
endif
if GetStage VMS55 > 0 && GetObjectiveDisplayed vDialogueEDE 13 == 1 && GetObjectiveDisplayed vDialogueEDE 15 == 0
setobjectivecompleted vDialogueEDE 13 1
setobjectivedisplayed vDialogueEDE 15 1
endif
if iEDEOut == 1 && iEDEDays == 0
set iEDEDays to GameDaysPassed
set iEDEOut to 2
elseif iEDEOut == 2
if GameDaysPassed - iEDEDays >= 1
setquestdelay vDialogueEDE .1
set iEDEOut to 3
endif
elseif iEDEOut == 4 && iDoOnce == 0 && player.getincell PrimmNashResidence == 0
set iDoOnce to 1
showmessage FollowerMessageLeaveEDE
if iHVUpgrade != 0
ede3ref.enable
elseif iFolUpgrade != 0
ede2ref.enable
endif
HVKnightEDERef.enable
setquestdelay vDialogueEDE 5
if GetObjectiveDisplayed vDialogueEDE 35
setobjectivecompleted vDialogueEDE 35 1
elseif GetObjectiveDisplayed vDialogueEDE 25
setobjectivecompleted vDialogueEDE 25 1
endif
setobjectivecompleted vDialogueEDE 60 1
setobjectivedisplayed vDialogueEDE 60 1
endif
if GetObjectiveDisplayed vDialogueEDE 12 && GetObjectiveCompleted vDialogueEDE 12 == 0 && GetHasNote HVPatrolNote01
setobjectivecompleted vDialogueEDE 12 1
setobjectivedisplayed vDialogueEDE 13 1
endif
end

begin Menumode
if iEDEOut == 3
if iHVUpgrade != 0
ede3ref.moveto EDEHomeMarker
elseif iFolUpgrade != 0
ede2ref.moveto EDEHomeMarker
endif
set iEDEOut to 4
endif
end

So, jetzt brauch ich nur noch Hilfe beim Reparatur -system!;(