public void PopulateSaveData(SaveData saveData) { if (CompareTag("Player")) { saveData.PlayerPos = transform.position; SaveData.AcotrSave acotrSave = new SaveData.AcotrSave(); acotrSave.uid = GetInstanceID(); // acotrSave.ItemSaves = new List<SaveData.ItemSave>(); // foreach (KeyValuePair<ItemEnum,CntAndPos> pair in inventory.inventory) // { // SaveData.ItemSave itemSave = new SaveData.ItemSave(); // itemSave.itemID = (int)pair.Key; // itemSave.count = pair.Value.m_count; // acotrSave.ItemSaves.Add(itemSave); // } //saveData.AcotrSaves.Add(acotrSave); } else if (CompareTag("BornFire")) { BoneFire boneFire = GetComponent <BoneFire>(); SaveData.InteractObject interactObject; interactObject.uid = GetInstanceID(); interactObject.activity = boneFire.lit; saveData.Reborn.Add(interactObject); } }
protected override void OnCantMove <T>(T component) { if (component.tag.Equals("Wall")) { Wall hitWall = component as Wall; hitWall.DamageWall(wallDamage); animator.SetTrigger("playerChop"); } else if (component.tag.Equals("BoneFire")) { Debug.Log(component.tag); BoneFire boneFire = component as BoneFire; animator.SetTrigger("playerChop"); SoundManager.instance.RandomizeSfx(eatSound1, eatSound2); Eat(); //SceneManager.LoadScene("Combat",LoadSceneMode.Additive); //boneFire.CoockMeat(this); } else if (component.tag.Equals("Reproductor")) { Debug.Log(component.tag); Reproductor reproductor = component as Reproductor; animator.SetTrigger("playerChop"); //SoundManager.instance.RandomizeSfx(epicSaxGuy); gameController = GameObject.Find("GameController"); popupMessage = gameController.GetComponent <PopupMessage>(); popupMessage.Open(reproductor); } }
public void DoAction() { EventCasterManager ecm = GetFirstContactEventCaster(); if (overlapEcastms.Count > 0) { if (!ecm.active) { return; } //if(!BattleManager.CheckAnglePlayer(ac.model,im.overlapEcastms[0].am.gameObject,30.0f)) return; //im.overlapEcastms[0].active = false; if (ecm.interractionEvent == InterractionEvent.Pickup) { PickUpItem(); return; } //修正位置、朝向 if (ecm.offset != Vector3.zero) { am.ToggleLock(true); transform.position = overlapEcastms[0].am.transform.position + overlapEcastms[0].am.transform.TransformVector(overlapEcastms[0].offset); } am.ac.model.transform.LookAt(ecm.am.transform.position, Vector3.up); am.ac.enableTurnDirection = false; if (ecm.interractionEvent == InterractionEvent.FrontStab) { am.ac.model.SendMessage("WeaponDisable"); overlapEcastms[0].am.ac.model.SendMessage("WeaponDisable"); am.dm.PlayTimeLine("frontStab", am, ecm.am); } else if (ecm.interractionEvent == InterractionEvent.Openbox) { am.wm.SetAllWeaponOnUseVisiable(false); am.dm.PlayTimeLine("openBox", am, ecm.am); } else if (ecm.interractionEvent == InterractionEvent.PullLevel) { am.dm.PlayTimeLine("leverUp", am, ecm.am); } else if (ecm.interractionEvent == InterractionEvent.Pickup) { PickUpItem(); } else if (ecm.interractionEvent == InterractionEvent.BornFireLit) { //玩家播放点火动画,特定时间点播放声效. am.ac.LitFire(); //篝火燃起来 BoneFire boneFire = ecm.GetComponentInParent <BoneFire>(); boneFire.Fire(); boneFire.FireBurst(); //保存篝火信息 } else if (ecm.interractionEvent == InterractionEvent.BornFireSit) { am.ac.SitFire(); am.wm.SetAllWeaponOnUseVisiable(false); am.ActorUIManager.ShowFirePanel(); } } }