Vertibird encounter

Post » Sat Feb 27, 2010 3:53 am

Hi!

Currently I'm trying to create a vertibird encounter. The vertibird will land, 3 Enclave Soldiers will drop off and one of them will talk to the player. The problem is, the Enclave soldiers dont move to their designated markers. Here is the script, and click http://img151.imageshack.us/img151/8797/vertibirdproblem.jpg for a screenshot of the setup. On the screenshot, the 3 xMarkerheadings are the landingmarker and the A and B marker, and the 3 guys in the rocks to the right have to be moved. Any suggestions? And do I have all the needed refs?

Objects:
3 guys to the right are FEVTestBaseEnclaveOfficerVertibird, FEVTestBaseEnclaveSoldier1Vertibird and FEVTestBaseEnclaveSoldier2Vertibird, who use different actor bases. These are their refs.

The 3 markers are VertibirdLandingMarker (linked ref) and VertiBirdDropoffMarkerA and VertiBirdDropoffMarkerB.

scn FEVTestBaseEnclaveOfficerVertibirdEncounterScriptshort activeref landingMarkerbegin onLoad	if active == 0		playgroup forward 0		set active to 1	endifendbegin OnActivate	if IsActionRef player == 0		; assume this is my reference marker		set landingMarker to getLinkedRef		; move soldier drop-off markers		FEVTestBaseEnclaveOfficerVertibirdMarker.moveto VertibirdLandingMarker 0 -75 0		FEVTestBaseEnclaveOfficerVertibirdMarker.moveto VertibirdLandingMarker 0 75 0		FEVTestBaseEnclaveSoldier1VertibirdMarker.moveto VertibirdLandingMarker 0 -75 0		FEVTestBaseEnclaveSoldier1VertibirdMarker.moveto VertibirdLandingMarker 0 75 0		FEVTestBaseEnclaveSoldier2VertibirdMarker.moveto VertibirdLandingMarker 0 -75 0		FEVTestBaseEnclaveSoldier2VertibirdMarker.moveto VertibirdLandingMarker 0 75 0	endifendbegin gameMode		if active == 1		if isanimplaying forward == 0			; landed -- drop off troopers if we have a landing marker			if getDestroyed == 0					if landingMarker != 0									; make sure nothing else has moved the drop off markers -- if so just use the landing marker					if VertiBirdDropoffMarkerA.GetDistance landingMarker < 100						VertiBirdDropoffMarkerA.PlaceLeveledActorAtMe FEVTestBaseEnclaveOfficerVertibird						VertiBirdDropoffMarkerA.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier1Vertibird						VertiBirdDropoffMarkerA.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier2Vertibird					else						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveOfficerVertibird						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier1Vertibird						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier2Vertibird					endif					if VertiBirdDropoffMarkerB.GetDistance landingMarker < 100						VertiBirdDropoffMarkerB.PlaceLeveledActorAtMe FEVTestBaseEnclaveOfficerVertibird						VertiBirdDropoffMarkerB.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier1Vertibird						VertiBirdDropoffMarkerB.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier2Vertibird					else						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveOfficerVertibird						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier1Vertibird						landingMarker.PlaceLeveledActorAtMe FEVTestBaseEnclaveSoldier2Vertibird					endif				endif				playgroup backward 0			endif			set active to 2					endif	elseif active == 2		if isanimplaying backward == 0			set active to 3			markfordelete		endif	endifend

User avatar
Brian Newman
 
Posts: 3466
Joined: Tue Oct 16, 2007 3:36 pm

Post » Fri Feb 26, 2010 11:28 pm

I guess I am a little confused as to how this CAN work.

I don't see moves on the solders, I see a bunch of placeatme, which is different?

If you have 3 particular soldiers you want to move, you would be assigning them REF names (you double click the object in the world, and there is a text box at the top, that's where you put the REF name) and then you move that REF name to the marker.

It doesn't seem like the placeatme instances even belong, it seems like you wanted to use those particular 3 enclave and that's not what placeatme does. ???
User avatar
Tania Bunic
 
Posts: 3392
Joined: Sun Jun 18, 2006 9:26 am


Return to Fallout: New Vegas