import class gamePuppetMountableComponent extends MountableComponent
{

	protected event OnInteractionChoice( choiceEvent : InteractionChoiceEvent )
	{
		var mountingEvent : MountingRequest;
		var lowLevelMountingInfo : MountingInfo;
		var slotId : MountingSlotId;
		var mountData : MountEventData;
		mountingEvent = new MountingRequest;
		slotId.id = 'leftShoulder';
		if( super.IsInteractionAcceptable( choiceEvent ) )
		{
			lowLevelMountingInfo.childId = choiceEvent.hotspot.GetEntityID();
			lowLevelMountingInfo.parentId = choiceEvent.activator.GetEntityID();
			lowLevelMountingInfo.slotId = slotId;
			mountingEvent.lowLevelMountingInfo = lowLevelMountingInfo;
			mountingEvent.preservePositionAfterMounting = false;
			mountingEvent.mountData = mountData;
			GameInstance.GetMountingFacility( ( ( weak< weak< GameObject > > )( GetEntity() ) ).GetGame() ).Mount( mountingEvent );
		}
	}

}

