Construction Set Skriptthread zum Construction Set

Hi, kann mir jemand sagen, wie ich möglichst simpel ein Script für Gefährten zusammenbastel? Es soll nur die Funktionen Folgen und Bleiben geben. Besonders gut wäre es, wenn man auch die Ausrüstung des Begleiters verändern könnte. Mehr soll da aber gar nicht rein. Hat da jemand vielleicht was passendes auf Lager? Das hat ja bestimmt schon mal einer gemacht.
 
also mit messageboxen hab ich sogar eins auflager weil ich vor kurzem erst einen begleiter gemacht habe^^
edit:bitteschön

ScriptName begleiterScript
short pressed
short button

begin onactivate
if pressed==0
MessageBox "Was soll Euer Begleiter tun?" "Folgen" "Warten"
Set Pressed to 1
endif
end

begin gamemode
if pressed==1
set button to getbuttonpressed
if button==0
addscriptpackage <folgen-package-ID>
removescriptpackage <warten-package-ID>
set button to 2
set pressed to 0
elseif button==1
removescriptpackage <folgen-package-ID>
addscriptpackage <warten-package-ID>
set button to 2
set pressed to 0
endif
endif
end
 
Zuletzt bearbeitet:
  • Like
Reaktionen: FeurigesInferno
Der Befehl "removeScriptPackage" ist in dem Skript nicht nötig. Wenn "addScriptPackage" ausgeführt wird, hat dieses Package höchste Priorität und ein NPC kann sowieso nur ein Skript-Package in der AI haben. Wenn es zwei mal ausgeführt wird, überschreibt das neue Package einfach das alte.
 
das mit der priorität mag sein.aber ein NPC kann durchaus mehrere packages haben.guck dir mal einen beliebigen an...die meisten ahben 2 oder mehr...

edit: ich glaub man muss dann irwi noch mit dem befehl "evp" (evaluate package) arbeiten...
 
Code:
SCN 002blub

short pressed
short button
Ref MyRef
Ref ActivatorRef

begin onactivate
if pressed==0
MessageBox "Was gibts?", "Folgt mir!", "Wartet hier!", "Geht zurück zur Burg!", "Ausrüstung ändern!"
Set Pressed to 1
endif
end

begin gamemode
	if pressed==1
		set button to getbuttonpressed
		if button==0
			addscriptpackage blaollow1
			set button to 4
			set pressed to 0
		elseif button==1
			addscriptpackage blawander1
			set button to 4
			set pressed to 0
		Elseif Button ==2
			addscriptpackage blaWegmitdem
			set button to 4
			set pressed to 0
		ElseIf Button ==2
			Set MyRef To GetSelf
			If MyRef == gef1RefX1
				gef1RefX1.Activate Player
			Elseif MyRef == gef2RefX1
				gef2RefX1.Activate Player
			endif
			set button to 4
			set pressed to 0
			Return
		endif
	endif
end

So sieht mein Script jetzt aus. Aber es funktionieren zwei Sachen nicht. Der Begleiter kommt nicht mit in andere Cells und verlässt sein Interior, in dem ich ihn platziert habe nicht. Außerdem kann ich seine Ausrüstung nicht ändern (obwohl ich nicht mal weiß, ob ich da ansatzweise richtig geskriptet habe und was da noch nötig zu ist.) Wenn ich jetzt die Ausrüstung ändern will hat dies nur zur Folge, dass ich ihn nicht mehr aktivieren kann.
 
du hast 2mla "if button==2" und dafür kein "==3"....
und mit "activate" kommst du nich ins inventar deines begleiters.du aktivierst ihn nur.das heißt du würdest dann anfangen mit ihm reden...das inventar öffnet sich nur wenn er tot ist...
du müsstest dafür einen zweiten auswahl-teil machen wo du die ausrüstung per "add-/removeitem","equipitem" etc regelst...
 
Bin jetzt ein Stück weiter. Mein einziges Problem ist jetzt, dass ich dem NPC aus einem Container alle Items geben muss. AddAllitems <containerref> als Befehl gibt es nicht. (RemoveAllitems schon). Gibt es da einen anderen Befehl um einen kompletten Containerinhalt zu übertragen?