public override void Start() { instance = this; if (GameWorldController.instance.AtMainMenu) { WindowDetectUW.SwitchFromMouseLook(); //Initialize the open screens from the game files switch (_RES) { case GAME_UW2: OpScr.GetComponent <RawImage>().texture = GameWorldController.instance.bytloader.LoadImageAt(BytLoader.UW2MAIN_BYT); break; default: OpScr.GetComponent <RawImage>().texture = GameWorldController.instance.bytloader.LoadImageAt(BytLoader.OPSCR_BYT); break; } CharGen.GetComponent <RawImage>().texture = GameWorldController.instance.bytloader.LoadImageAt(BytLoader.CHARGEN_BYT); CursorIcon = GameWorldController.instance.grCursors.LoadImageAt(0); CursorPosition = new Rect( 0.0f, 0.0f, cursorSizeX, cursorSizeY); //Play the splash screens. CharGen.SetActive(false); UWHUD.instance.CutScenesFull.SetAnimationFile = "FadeToBlackSleep"; UWHUD.instance.CutScenesFull.End(); Cutscene_Splash ci = UWHUD.instance.gameObject.AddComponent <Cutscene_Splash>(); UWHUD.instance.CutScenesFull.cs = ci; UWHUD.instance.CutScenesFull.Begin(); } }
public virtual ObjectInteraction Pickup(ObjectInteraction objPicked, PlayerInventory pInv) { //completes the pickup. //FIELD PICKUP objPicked.PickedUp=true; if (objPicked.GetComponent <Container>() != null) { Container.SetPickedUpFlag(objPicked.GetComponent <Container>(), true); Container.SetItemsParent(objPicked.GetComponent <Container>(), GameWorldController.instance.InventoryMarker.transform); Container.SetItemsPosition(objPicked.GetComponent <Container>(), GameWorldController.instance.InventoryMarker.transform.position); } //UWHUD.instance.CursorIcon=objPicked.GetInventoryDisplay().texture; pInv.ObjectInHand = objPicked; if (objPicked.GetComponent <Rigidbody>() != null) { FreezeMovement(objPicked.gameObject); } objPicked.transform.position = GameWorldController.instance.InventoryMarker.transform.position; objPicked.transform.parent = GameWorldController.instance.InventoryMarker.transform; GameWorldController.MoveToInventory(objPicked); pInv.ObjectInHand = objPicked; objPicked.Pickup(); if (WindowDetectUW.ContextUIEnabled) { if (MouseLookEnabled) { WindowDetectUW.SwitchFromMouseLook(); } } return(objPicked); }
public override void Update() { base.Update(); if (UpdateNow == true) { UpdateNow = false; WindowDetect.ContextUIUse = ((UWCharacter.InteractionModeTalk == UWCharacter.InteractionMode) || (UWCharacter.InteractionModePickup == UWCharacter.InteractionMode) || (UWCharacter.InteractionModeUse == UWCharacter.InteractionMode)); //Only context in use or pickup for (int i = 1; i <= 5; i++) { if (i != UWCharacter.InteractionMode) { //Off version //Controls[i].texture= lfti.LoadImageAt((i*2)); SetImage(ref Controls[i], i * 2); } else { //On Version //Controls[i].texture= lfti.LoadImageAt(((i*2)+1)); SetImage(ref Controls[i], (i * 2) + 1); } } if (UWCharacter.InteractionMode == UWCharacter.InteractionModeOptions) { if (UWCharacter.Instance.MouseLookEnabled) { WindowDetectUW.SwitchFromMouseLook(); } OptionsMenu.gameObject.SetActive(true); OptionsMenu.initMenu(); this.gameObject.SetActive(false); } } }
void PostAnimPlay() { //Code to call at the end of some animations. switch (SetAnimation.ToLower()) { case "death_with_sapling": //Player will resurrect, case "cs402.n01": { SetAnimation = "Anim_Base"; //Clears out the animation. PrevAnimation = "x"; UWCharacter.ResurrectPlayer(); break; } case "death": //PLayer is dying and will not resurrect. case "cs403.n01": SetAnimation = "cs403.n02"; break; case "death_final": //Player has finally died. case "cs403.n02": SetAnimation = "Anim_Base"; GameWorldController.instance.AtMainMenu = true; //Clear out game objects foreach (Transform child in GameWorldController.instance.LevelModel.transform) { GameObject.Destroy(child.gameObject); } foreach (Transform child in GameWorldController.instance.DynamicObjectMarker()) { GameObject.Destroy(child.gameObject); } foreach (Transform child in GameWorldController.instance.SceneryModel.transform) { GameObject.Destroy(child.gameObject); } for (int x = 0; x <= GameWorldController.instance.Tilemaps.GetUpperBound(0); x++) { GameWorldController.instance.Tilemaps[x] = null; } for (int x = 0; x <= GameWorldController.instance.objectList.GetUpperBound(0); x++) { GameWorldController.instance.objectList[x] = null; } MainMenuHud.instance.gameObject.SetActive(true); MainMenuHud.instance.MenuMode = 0; MainMenuHud.instance.OpScr.SetActive(true); MainMenuHud.instance.CharGen.SetActive(false); MainMenuHud.instance.ButtonClickMainMenu(4); //reset menu GameWorldController.instance.LevelNo = -1; WindowDetectUW.SwitchFromMouseLook(); break; default: UWCharacter.Instance.playerCam.cullingMask = HudAnimation.NormalCullingMask; SetAnimation = "Anim_Base"; break; } }
public void GotoMainMenu() { GameWorldController.instance.AtMainMenu=true; //Clear out game objects foreach (Transform child in GameWorldController.instance.LevelModel.transform) { GameObject.Destroy(child.gameObject); } foreach (Transform child in GameWorldController.instance.DynamicObjectMarker()) { GameObject.Destroy(child.gameObject); } foreach (Transform child in GameWorldController.instance.SceneryModel.transform) { GameObject.Destroy(child.gameObject); } MainMenuHud.instance.gameObject.SetActive(true); MainMenuHud.instance.MenuMode=0; MainMenuHud.instance.OpScr.SetActive(true); MainMenuHud.instance.CharGen.SetActive(false); MainMenuHud.instance.ButtonClickMainMenu(4);//reset menu WindowDetectUW.SwitchFromMouseLook(); return; }
public int item_type; //The type of the object created public override void ExecuteTrap(int triggerX, int triggerY, int State) { //Debug.Log ("an arrow trap has gone off. It will spawn a " + item_index + " of type " + item_type + " along vector " + this.gameObject.transform.rotation); GameObject myObj = new GameObject("SummonedObject_" + playerUW.PlayerMagic.SummonCount++); myObj.layer = LayerMask.NameToLayer("UWObjects"); myObj.transform.position = this.transform.position; myObj.transform.rotation = this.transform.rotation; //myObj.transform.parent=playerUW.playerInventory.InventoryMarker.transform; ObjectInteraction.CreateObjectGraphics(myObj, "Sprites/OBJECTS_" + item_index, true); ObjectInteraction.CreateObjectInteraction(myObj, 0.5f, 0.5f, 0.5f, 0.5f, "Sprites/OBJECTS_" + item_index.ToString("000"), "Sprites/OBJECTS_" + item_index.ToString("000"), "Sprites/OBJECTS_" + item_index, item_type, item_index, 0, objInt.Quality, objInt.Owner, 1, 1, 0, 1, 0, 0, 0, 1); myObj.AddComponent <object_base>(); //Vector3 ThrowDir;// =myObj.transform.position + (myObj.transform.rotation.eulerAngles.normalized); WindowDetectUW.UnFreezeMovement(myObj); //ThrowDir = myObj.transform.position + (myObj.transform.forward); //Debug.Log (objInt.transform.name + " " + myObj.transform.position + " to " + ThrowDir + " via " + myObj.transform.rotation.eulerAngles.normalized); //myObj.GetComponent<Rigidbody>().AddForce(ThrowDir* 10.0f); myObj.GetComponent <Rigidbody>().collisionDetectionMode = CollisionDetectionMode.Continuous; myObj.GetComponent <Rigidbody>().AddForce(myObj.transform.forward * 50.0f * ((float)(objInt.Owner))); //myObj.transform.position=ThrowDir; }
public static void CreateObjectInteraction(GameObject myObj, GameObject parentObj, float DimX, float DimY, float DimZ, float CenterY, string WorldString, string InventoryString, string EquipString, int ItemType, int ItemId, int link, int Quality, int Owner, int isMoveable, int isUsable, int isAnimated, int useSprite, int isQuant, int isEnchanted, int flags, int inUseFlag) { //Debug.Log (myObj.name); //Add a script. ObjectInteraction objInteract = myObj.AddComponent <ObjectInteraction>(); BoxCollider box = myObj.GetComponent <BoxCollider>(); if ((box == null) && (myObj.GetComponent <NPC>() == null) && (isUsable == 1)) { //add a mesh for interaction box = myObj.AddComponent <BoxCollider>(); box.size = new Vector3(0.2f, 0.2f, 0.2f); box.center = new Vector3(0.0f, 0.1f, 0.0f); if (isMoveable == 1) { box.material = Resources.Load <PhysicMaterial>("Materials/objects_bounce"); } } objInteract.WorldDisplayIndex = int.Parse(WorldString.Substring(WorldString.Length - 3, 3)); objInteract.InvDisplayIndex = int.Parse(InventoryString.Substring(InventoryString.Length - 3, 3)); if (isUsable == 1) { objInteract.CanBeUsed = true; } //SpriteRenderer objSprite = myObj.transform.FindChild(myObj.name + "_sprite").GetComponent<SpriteRenderer>(); // SpriteRenderer objSprite = parentObj.GetComponentInChildren<SpriteRenderer>(); // objInteract.WorldString=WorldString; // objInteract.InventoryString=InventoryString; objInteract.EquipString = EquipString; //objInteract.InventoryDisplay=InventoryString; objInteract.ItemType = ItemType; //UWexporter id type objInteract.item_id = ItemId; //Internal ItemID objInteract.Link = link; objInteract.Quality = Quality; objInteract.Owner = Owner; objInteract.flags = flags; if (inUseFlag == 1) { objInteract.InUse = true; } if (isMoveable == 1) { objInteract.CanBePickedUp = true; Rigidbody rgd = parentObj.AddComponent <Rigidbody>(); rgd.angularDrag = 0.0f; WindowDetectUW.FreezeMovement(myObj); } if (ItemType != ObjectInteraction.ANIMATION) { if (isAnimated == 1) { objInteract.isAnimated = true; } if (useSprite == 1) { objInteract.ignoreSprite = false; } else { objInteract.ignoreSprite = true; } } else { objInteract.ignoreSprite = true; } if (isQuant == 1) { objInteract.isQuant = true; } if (isEnchanted == 1) { objInteract.isEnchanted = true; Debug.Log(myObj.name + " is enchanted. Take a look at it please."); } }