Zenkon13 Posted August 13, 2014 Share Posted August 13, 2014 Hello everyone, Zenkon13 here... I've been trying to finish up a working script for a disabled robot, similar when you have to fix ED-E in Primm. I looked up in the GECK for the script that was used to repair ED-E, I copied the script and began to work on my own verison of the script for a custom companion of mine. I checked everything in the script and replaced a few REFs / Options / Messages here and there making sure that it's different from the original. However it appears not to wanting to save. Can some please tell me what I'm doing wrong here? Please? * ^* scn ZK13RustyDisabledSCRIPTint iRustyFixed ; 1 = Rusty Fixed, 2 = Rusty Upgradedint iButton ; Tracks the button presses for Rusty's repair menusint iMenu ; Tracks the current menu for Rusty's repair menusint iRepairStatefloat fTimerbegin OnActivate Player if IsActionRef Player set ZK13RustyDialogue.bRustyExamined to 1 if Player.IsInCombat == 1 showMessage ZK13RustyCombatMessage else showMessage ZK13RustyRepair00 endif endifendbegin OnActivate if IsActionRef Player if Player.IsInCombat == 1 showMessage ZK13RustyCombatMessage else showMessage ZK13RustyRepair00 endif endifendbegin GameMode if iRustyFixed == 1 set fTimer to GetSecondsPassed + fTimer if fTimer >= 2 set iRustyFixed to 2 RustyRef.SetRestrained 1 RustyREF.enable RustyRef.ResetAI disable endif elseif iRustyFixed == 2 disable return endif set iButton to GetButtonPressed if iButton == 0 set iMenu to 0 endif if iMenu == 0 ; ZK13RustyRepair00 if iButton == 1 showMessage ZK13RustyRepair01 set iMenu to 1 elseif iButton == 2 showMessage ZK13RustyRepair03 set iMenu to 3 elseif iButton == 3 showMessage ZK13RustyRepair02 set iMenu to 2 endif elseif iMenu == 1 ; ZK13RustyRepair01 if iButton == 1 imod FadeToBlackAndBackQuickExtendedISFX set iRustyFixed to 1 disableplayercontrols RustyREF.MoveTo RustyDeadREF elseif iButton == 2 showMessage ZK13RustyRepair02 set iMenu to 2 elseif iButton == 3 showMessage ZK13RustyRepair04 set iMenu to 4 endif elseif iMenu == 3 ; ZK13RustyRepair03 if iButton == 1 imod FadeToBlackAndBackQuickExtendedISFX set iRustyFixed to 1 disableplayercontrols RustyREF.MoveTo RustyDeadREF elseif iButton == 2 showMessage ZK13RustyRepair04 set iMenu to 4 endif elseif iMenu == 2 ; ZK13RustyRepair02 if iButton == 1 showMessage ZK13RustyRepair01 set iMenu to 1 elseif iButton == 2 set iRepairState to 1 showMessage ZK13RustyRepair03 set iMenu to 3 endif elseif iMenu == 4 ; ZK13RustyRepair04 if iButton == 1 player.RemoveItem ScrapElectronics 2 player.RemoveItem SpareParts 3 player.RemoveItem SensorModule 1 imod FadeToBlackAndBackQuickExtendedISFX set iRustyFixed to 1 disableplayercontrols RustyREF.MoveTo RustyDeadREF elseif iButton == 2 && iRepairState == 0 showMessage ZK13RustyRepair01 set iMenu to 1 elseif iButton == 2 && iRepairState == 1 showMessage ZK13RustyRepair03 set iMenu to 3 elseif iButton == 3 showMessage ZK13RustyRepair02 set iMenu to 2 endif endifEND Link to comment Share on other sites More sharing options...
devinpatterson Posted August 14, 2014 Share Posted August 14, 2014 Could be a quite a few things. If there is a missing message, for instance. Probably also be a good idea to explicitly place a condition on your begin OnActivate Player block.ie. change this if IsActionRef Player set ZK13RustyDialogue.bRustyExamined to 1 if Player.IsInCombat == 1 to if IsActionRef Player == 1 set ZK13RustyDialogue.bRustyExamined to 1 if Player.IsInCombat == 1 if nothing else just for readability. But anyway on to your question. You need to grab powerup 1.4, it will pinpoint any syntax errors and let you know what line numbers they are on. Link to comment Share on other sites More sharing options...
Recommended Posts