internal HeadState RequestLastStateById(int idHead) { using (MainDbContext dbContext = new MainDbContext()) { HeadState hd = dbContext.DvHeadStates.Where(t => t.Idhead == idHead).OrderByDescending(t => t.Time).First(); return(hd); } }
private void SetState(HeadState hs) { if (hs != this._state) { this._state = hs; base.GetComponent <CUIEventScript>().enabled = (this._state == HeadState.Normal) || (this._state == HeadState.ReviveReady); } }
public ActionResult DeleteConfirmed(int id) { HeadState headState = db.DvHeadStates.Find(id); db.DvHeadStates.Remove(headState); db.SaveChanges(); return(RedirectToAction("Index")); }
protected void TurnIntoNeck() { headState = HeadState.NECK; features.SetActive(false); KeyManager.instance.ReturnKey(key); Hydra.instance.CreateDeadHead(transform); }
IEnumerator AppearAgain(Transform trans, Vector3 start_p, Vector3 end_p, float time) { yield return(StartCoroutine(MoveObject(trans, start_p, end_p, time))); m_State = HeadState.Stationary; yield return(null); }
public void MonsterIsDestroying() { m_State = HeadState.Destroyed; Vector3 end_p = new Vector3(m_IsRightHead ? m_StartPosX : -m_StartPosX, -10.0f, 0.0f); StartCoroutine(DestroyTheHead(transform, transform.position, end_p, 3.0f)); FallChewingObjects(); }
public void Restart() { m_MonsterContr = (MonsterController)m_Monster.GetComponent(typeof(MonsterController)); m_State = HeadState.Stationary; DestroyChewingObjects(); Init(); RestartPhysics(); }
// Start is called before the first frame update void Start() { rigidPlayer = GetComponent <Rigidbody2D>(); playerHeadCollider = GetComponent <CircleCollider2D>(); player = player.GetComponent <PlayerMove>(); anim = GetComponent <Animator>(); moveflag = false; headAwaCreate = true; headGoalAwaDelete = true; currentHeadState = HeadState.Move; }
public ActionResult Edit([Bind(Include = "Id,Time,Idhead,Voltage,Temperature,Status,HeadTime")] HeadState headState) { if (ModelState.IsValid) { db.Entry(headState).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.Idhead = new SelectList(db.DvHeads, "Id", "Ipaddress", headState.Idhead); return(View(headState)); }
// Start is called before the first frame update void Start() { audioEventEmitter = GetComponent <StudioEventEmitter>(); if (isLeft) { GetComponent <SpriteRenderer>().flipX = true; gamePos *= -1; endPos *= -1; } SetIsTalking(talking); hS = HeadState.beginGame; }
/// <summary> /// ЛИЧНЫЙ КАБИНЕТ Вернуть страницу со списком тревожных сообщений /// Возращает список всех тревожных сообщений (event) /// Информацию о конфигурации (config) /// Информацию о текущем состоянии устройства (сделать автообновление) (head_state) /// Информацию о конфигурационной таблице устройств (head_table) /// Информацию об адресе из конфигурации (address) /// </summary> /// <param name="page"></param> /// <returns></returns> public ActionResult Index(int?page, int?idHead, string type = "all") { // !!! запрос происходит не с ObjectCardIndex а с GetEventData // check // временно передавать в модель тип текущих сообщений int _idHead = idHead == null ? 1 : (int)idHead; var dvHeadEvents = db.DvHeadEvents.Include(e => e.DvHead).Where(e => e.DvHead.Id.Equals(_idHead)).ToList(); var pageNumber = (page ?? 1); var pageSize = 6; // получить таблицы подключенных устройств TablesDto tablesDto = tableService.RequestDeviceTables(_idHead); if (tablesDto.Failure) { return(HttpNotFound()); } ; // узнать состояние DV-HEAD OMEGA HeadState headState = stateService.RequestLastStateById(_idHead); // TODO Config и Address в дальнейшем можно хранить в классе конфигурация приложения // в зависимости от типа запрашиваемых данных требуется возвращать обработанные или нет сообщения // var events = null; - check EventViewModel eventViewModel = new EventViewModel(); switch (type) { case "all": eventViewModel.Events = dvHeadEvents.OrderByDescending(o => o.Time).ToPagedList(pageNumber, pageSize); eventViewModel.Type = "all"; break; case "crud": eventViewModel.Events = dvHeadEvents.Where(o => o.Alarm > 0).OrderByDescending(o => o.Time).ToPagedList(pageNumber, pageSize); eventViewModel.Type = "crud"; break; default: eventViewModel.Events = dvHeadEvents.OrderByDescending(o => o.Time).ToPagedList(pageNumber, pageSize); eventViewModel.Type = "all"; break; } eventViewModel.ExternalTable = tablesDto.ExternalTable; eventViewModel.ConfigurationTable = tablesDto.ConfigurationTable; eventViewModel.DvHead = tablesDto.DvHead; eventViewModel.DvHeadState = headState; eventViewModel.Address = tablesDto.Address; return(View(eventViewModel)); }
void Update() { switch (headState) { case HeadState.Attached: head.transform.position = (cursor.transform.position - neckStart.transform.position).normalized * neckSize + neckStart.position; if (cursor.transform.position.x > transform.position.x && !FacingRight || cursor.transform.position.x < transform.position.x && FacingRight) { Flip(); } //Launch the head if (Input.GetButtonDown("A_P" + playerNumber)) { head.GetComponent <Rigidbody2D>().velocity = Vector2.zero; head.GetComponent <Rigidbody2D>().AddForce((cursor.transform.position - neckStart.transform.position).normalized * headLaunchForce); head.GetComponent <Rigidbody2D>().gravityScale = 1; AkSoundEngine.PostEvent("Play_Lancer", gameObject); headScript.EnableJoint(true); headState = HeadState.Launched; } break; case HeadState.Launched: if (Input.GetButtonDown("Y_P" + playerNumber)) { foreach (CircleCollider2D c in headScript.cc) { c.enabled = true; } head.GetComponent <HeadScript>().StartCoroutine(head.GetComponent <HeadScript>().Rewind()); headState = HeadState.CommingBack; } break; case HeadState.Grabbing: //UnGrab if (Input.GetButtonDown("Y_P" + playerNumber)) { headScript.UnGrab(); } //Eat enemy else if (Input.GetButtonDown("B_P" + playerNumber)) { if (headScript.Eat()) { head.GetComponent <HeadScript>().StartCoroutine(head.GetComponent <HeadScript>().Rewind()); headState = HeadState.CommingBack; } } break; } }
void OnHeadStateChanged(HeadState state) { switch (state) { case HeadState.Stop: Stop(); break; case HeadState.Move: NormalMove(); break; } }
public void Fall() { if (!IsOk()) { return; } m_State = HeadState.Falling; Vector3 new_p = new Vector3(m_IsRightHead ? m_StartPosX : -m_StartPosX, m_StartPosY, 0.0f); Vector3 appear_p = new Vector3(0.0f, 0.0f, 0.0f); StartCoroutine(FallAndThanAppearAgain(transform, transform.localPosition, new_p, appear_p, 3.0f)); FallChewingObjects(); RestartPhysics(); }
private void UpdateReviveCd() { if ((this.MyHero != 0) && (this.MyHero.handle.ActorControl != null)) { int num = Mathf.RoundToInt(this.MyHero.handle.ActorControl.ReviveCooldown * 0.001f); if (num >= 0) { if (this.ReviveCdTxt != null) { this.ReviveCdTxt.text = string.Format("{0}", num); } this.SetState(HeadState.ReviveCDing); } else if (!Singleton <BattleLogic> .instance.GetCurLvelContext().IsMobaMode()) { Player player = Singleton <GamePlayerCenter> .instance.GetPlayer(this._myHero.handle.TheActorMeta.PlayerId); if (player != null) { HeadState hs = !player.IsMyTeamOutOfBattle() ? HeadState.ReviveForbid : HeadState.ReviveReady; if (hs != this._state) { this.SetState(hs); if (this._state == HeadState.ReviveReady) { this.ReviveCdTxt.text = Singleton <CTextManager> .GetInstance().GetText("PlayerHead_dianji"); this.ReviveCdTxt.color = Color.green; this.ReviveCdTxt.fontSize = 14; this.HeroHeadImg.color = new Color(1f, 1f, 1f); } else { this.ReviveCdTxt.text = Singleton <CTextManager> .GetInstance().GetText("PlayerHead_tuozhan"); this.ReviveCdTxt.color = Color.gray; this.ReviveCdTxt.fontSize = 14; this.HeroHeadImg.color = new Color(0.3f, 0.3f, 0.3f); } } Player hostPlayer = Singleton <GamePlayerCenter> .GetInstance().GetHostPlayer(); if (((hostPlayer != null) && (this._state == HeadState.ReviveReady)) && hostPlayer.Captain.handle.ActorControl.m_isAutoAI) { this.MyHero.handle.ActorControl.Revive(false); } } } } }
// GET: HeadStates/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } HeadState headState = db.DvHeadStates.Find(id); if (headState == null) { return(HttpNotFound()); } return(View(headState)); }
private void UpdateState() { HeadState nextStateByEnvironment = GetNextStateByEnvironment(); nextState = (nextState > nextStateByEnvironment ? nextState : nextStateByEnvironment); if (state != nextState) { HandleStateTransitionSideEffect(state, nextState); state = nextState; } nextState = HeadState.None; }
// GET: HeadStates/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } HeadState headState = db.DvHeadStates.Find(id); if (headState == null) { return(HttpNotFound()); } ViewBag.Idhead = new SelectList(db.DvHeads, "Id", "Ipaddress", headState.Idhead); return(View(headState)); }
public void Draw( GameTime gameTime ) { if ( _headState == HeadState.Normal ) { DrawingHelper.Draw( _normal, new Rectangle( (int) _normalPos.X, (int) _normalPos.Y, _normal.Width, _normal.Height ), Color.White ); } else if ( _headState == HeadState.Open ) { if ( _shakeStart == TimeSpan.Zero ) { _shakeStart = gameTime.TotalGameTime; } if ( ( gameTime.TotalGameTime - _shakeStart ) >= _shakeTime ) { _headState = HeadState.Normal; DrawingHelper.Draw( _normal, new Rectangle( (int) _normalPos.X, (int) _normalPos.Y, _normal.Width, _normal.Height ), Color.White ); } else { if ( ( gameTime.TotalGameTime - _timeSinceShake ) >= _timeBetweenShake ) { _shook = !_shook; _timeSinceShake = gameTime.TotalGameTime; } if ( _shook ) { DrawingHelper.Draw( _open, new Rectangle( (int) _openPos.X, (int) _openPos.Y, _open.Width, _open.Height ), Color.White ); } else { DrawingHelper.Draw( _open, new Rectangle( (int) _openPos.X, (int) ( _openPos.Y - _shakeMoveAmount ), _open.Width, _open.Height ), Color.White ); } } } else if ( _headState == HeadState.OpenForever ) { } }
private void HandleStateTransitionSideEffect(HeadState oldState, HeadState newState) { switch (newState) { case HeadState.Waiting: stateEndTime = Time.time + WaitingTimeBeforeLaunch; break; case HeadState.Launched: transform.parent = transform.parent.parent; break; case HeadState.ObstacleHit: Die(); break; } }
void EatMass(float mass, FallingObject fo = null) // if fo != null => destroy the object { m_MonsterContr.EatMass(mass); if (fo) { m_ChewingObjects.Remove(fo); Destroy(fo); } m_MassChewingObjs -= mass; if (m_MassChewingObjs < 0.001f) { m_State = HeadState.Stationary; } else { m_State = HeadState.Chewing; } }
// Update is called once per frame void Update() { if (state == HeadState.dropping) { transform.localPosition = new Vector3(0, transform.localPosition.y - 0.05f, -5); if (transform.localPosition.y <= minHeight) { state = HeadState.rising; } } if (state == HeadState.rising) { transform.localPosition = new Vector3(0, transform.localPosition.y + 0.01f, -5); if (transform.localPosition.y >= maxHeight) { state = HeadState.still; } } }
public void SetHeadIcon(HeadState state) { switch (state) { case HeadState.Normal: SetHeadIcon(0); break; case HeadState.Nervious: SetHeadIcon(1); break; case HeadState.Hurt: SetHeadIcon(2); break; case HeadState.Good: SetHeadIcon(3); break; } }
// Update is called once per frame void Update() { timer += Time.deltaTime; float width = (float)health / (float)3; print(width); healthbar.rectTransform.sizeDelta = new Vector2(width * 600, 40); switch (state) { case HeadState.NotTired: //create a line from the eyes to the player aimlocation = player.transform.position - new Vector3(0, 0.5f, 0); transform.LookAt(player.transform.position - new Vector3(0, 0.5f, 0)); if (timer > 3.0f) { state = HeadState.PreparingToFire; timer = 0; } break; case HeadState.PreparingToFire: aimlocation = player.transform.position - new Vector3(0, 0.5f, 0); transform.LookAt(aimlocation); //make laser lines visible line.enabled = true; line2.enabled = true; line.SetPosition(0, righteye.transform.position); line.SetPosition(1, aimlocation); line2.SetPosition(0, lefteye.transform.position); line2.SetPosition(1, aimlocation); if (timer > 1.0f) { state = HeadState.Firing; timer = 0; //make lines wider and more red? Old laser tracking stuff /* * line.startWidth = 0.15f; * line.endWidth = 0.15f; * line2.startWidth = 0.15f; * line2.endWidth = 0.15f; * line.startColor = dangerousLaser.color; * line.endColor = dangerousLaser.color; * line2.startColor = dangerousLaser.color; * line2.endColor = dangerousLaser.color; */ } break; case HeadState.Firing: // fire off the raycasts and damage player if hit //aimlocation += (player.transform.position - aimlocation).normalized * 5.0f * Time.deltaTime; aimlocation = player.transform.position - new Vector3(0, 0.5f, 0); transform.LookAt(aimlocation); line.enabled = false; line2.enabled = false; Quaternion direction = new Quaternion(); direction.SetLookRotation(aimlocation - righteye.transform.position); Instantiate(laser, righteye.transform.position + transform.forward, direction); direction.SetLookRotation(aimlocation - lefteye.transform.position); Instantiate(laser, lefteye.transform.position + transform.forward, direction); print(shotsLeft); shotsLeft -= 1; if (shotsLeft <= 0) { shotsLeft = maxShots; state = HeadState.Tired; animator.SetBool("Tired", true); transform.forward = new Vector3(0, 0, 1); weakspot.transform.position += transform.forward; } else { state = HeadState.NotTired; } /* * line.SetPosition(0, righteye.transform.position); * line.SetPosition(1, aimlocation); * * line2.SetPosition(0, lefteye.transform.position); * line2.SetPosition(1, aimlocation);*/ //if (timer > 1.0f) //{ timer = 0; //turn off eye lasers once they fire and reset their width. old laser stuff /*line.enabled = false; * line2.enabled = false; * line.startWidth = 0.1f; * line.endWidth = 0.1f; * line2.startWidth = 0.1f; * line2.endWidth = 0.1f; * * line.startColor = safeLaser.color; * line.endColor = safeLaser.color; * line2.startColor = safeLaser.color; * line2.endColor = safeLaser.color;*/ //} break; case HeadState.Tired: //boss plays lean forward animation and waits for a few seconds if (timer >= 8) { state = HeadState.NotTired; animator.SetBool("Tired", false); weakspot.transform.position -= transform.forward; } break; } }
public void Shake() { _headState = HeadState.Open; _timeSinceShake = TimeSpan.Zero; _shook = false; _shakeStart = TimeSpan.Zero; }
// NGUI 的标签头 static public bool DrawItemHeader(PlayModeConfig config, ref HeadState state, int index) { string text = config.value + " id = " + config.key; GUILayout.Space(3f); switch (state) { case HeadState.Edit: GUI.backgroundColor = new Color(1f, 1f, 1f); text = "\u25BC " + text; break; default: GUI.backgroundColor = (index % 2 == 0 ? new Color(0.7f, 0.8f, 0.8f) : new Color(0.8f, 0.8f, 0.8f)); text = "\u25BA " + text; break; } GUILayout.BeginHorizontal(); GUI.changed = false; bool result; EditorGUILayout.BeginVertical(GUILayout.Width(415)); if (state == HeadState.Edit) { result = true; isHideHead = GUILayout.Toggle(isHideHead, text, "dragtab", GUILayout.Width(415)); if (!isHideHead) { state = HeadState.Nomal; editIndex = -1; Debug.Log("Hide"); isHideHead = true; result = false; } } else { result = !GUILayout.Toggle(true, text, "dragtab", GUILayout.Width(415)); } EditorGUILayout.EndVertical(); GUI.backgroundColor = Color.white; EditorGUILayout.BeginVertical(GUILayout.Width(20)); if (GUILayout.Button("↑", GUILayout.Width(20))) { int configIndex = PlayModeTools.pData.configs.IndexOf(config); if (configIndex != 0) { var temp = PlayModeTools.pData.configs[configIndex]; PlayModeTools.pData.configs[configIndex] = PlayModeTools.pData.configs[configIndex - 1]; PlayModeTools.pData.configs[configIndex - 1] = temp; PlayModeTools.SortData(); } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(20)); if (GUILayout.Button("↓", GUILayout.Width(20))) { int configIndex = PlayModeTools.pData.configs.IndexOf(config); if (configIndex != PlayModeTools.pData.configs.Count - 1) { var temp = PlayModeTools.pData.configs[configIndex]; PlayModeTools.pData.configs[configIndex] = PlayModeTools.pData.configs[configIndex + 1]; PlayModeTools.pData.configs[configIndex + 1] = temp; PlayModeTools.SortData(); } } EditorGUILayout.EndVertical(); GUI.backgroundColor = Color.red; EditorGUILayout.BeginVertical(GUILayout.Width(20)); if (GUILayout.Button("x", GUILayout.Width(20))) { int configIndex = PlayModeTools.pData.configs.IndexOf(config); PlayModeTools.pData.configs.RemoveAt(configIndex); PlayModeTools.SortData(); } EditorGUILayout.EndVertical(); GUILayout.EndHorizontal(); GUI.backgroundColor = Color.white; //if (!state) GUILayout.Space(3f); return(result); }
protected void TurnIntoNeck() { headState = HeadState.NECK; features.SetActive (false); KeyManager.instance.ReturnKey (key); Hydra.instance.CreateDeadHead (transform); }
public static void Draw() { GUILayout.Space(10); EditorGUILayout.BeginVertical(); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("<", GUILayout.Width(20))) { PlayModeTools.curProvince = -1; return; } EditorGUILayout.LabelField("", GUILayout.Width(400)); EditorGUILayout.LabelField(PlayModeTools.pData.name + "玩法编辑", GUILayout.Width(400)); EditorGUILayout.EndHorizontal(); GUILayout.Space(10); HeadState state = HeadState.Nomal; scroll = GUILayout.BeginScrollView(scroll); for (int i = 0; i < PlayModeTools.pData.configs.Count; i++) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.BeginVertical(GUILayout.Width(490)); if (editIndex == i) { state = HeadState.Edit; } else { state = HeadState.Nomal; } if (DrawItemHeader(PlayModeTools.pData.configs[i], ref state, i)) { // if(i == 0) // Debug.Log(state); switch (state) { case HeadState.Nomal: editIndex = i; locationName = string.Empty; break; default: editIndex = i; if (i < PlayModeTools.pData.configs.Count) { DrawItem(PlayModeTools.pData.configs[i]); } break; } } EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } GUILayout.EndScrollView(); GUILayout.Space(5); EditorGUILayout.BeginHorizontal(); //createLocationName = EditorGUILayout.TextField(createLocationName,GUILayout.Width(200)); if (GUILayout.Button("+", "OL Titlemid", GUILayout.Width(PlayModeEditorWindow.window.maxSize.x))) { PlayModeConfig config = new PlayModeConfig(); config.key = PlayModeTools.pData.GetConfigNextId(); config.value = "新增的地区"; PlayModeTools.pData.configs.Add(config); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal("TextArea", GUILayout.MinHeight(100)); EditorGUILayout.BeginVertical(GUILayout.Width(85)); EditorGUILayout.LabelField(" ", GUILayout.Width(85)); EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("手动保存", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.SortData(); if (EditorUtility.DisplayDialog("提示", "已手动保存!", "知道了")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("生成Lua配置", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.ExportLuaScript(); if (EditorUtility.DisplayDialog("提示", "已生成全国与省份配置!", "确定")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("生成本省Lua配置", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.ExportPlayModeLuaScript(); if (EditorUtility.DisplayDialog("提示", "已导出本省Lua文件至" + PlayModeTools.luaPath, "确定")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(75)); EditorGUILayout.LabelField(" ", GUILayout.Width(75)); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); EditorGUILayout.EndVertical(); }
public static void Draw() //Dictionary<,string,ProvinceData> Draw() { GUILayout.Space(10); EditorGUILayout.BeginVertical(); EditorGUILayout.BeginHorizontal(); PlayModeTools.data.isLocal = EditorGUILayout.ToggleLeft("单省包", PlayModeTools.data.isLocal, GUILayout.Width(100)); int lableWidth = 300; if (PlayModeTools.data.isLocal && PlayModeTools.provinceNames.Count > 0) { lableWidth = 200; int selectIndex = PlayModeTools.provinceNames.IndexOf(PlayModeTools.data.configs.Find(a => a.key == PlayModeTools.data.localId).name); int index = selectIndex; selectIndex = EditorGUILayout.Popup(selectIndex, PlayModeTools.provinceNames.ToArray(), GUILayout.Width(100)); if (index != selectIndex) { PlayModeTools.data.localId = PlayModeTools.data.configs.Find(a => a.name == PlayModeTools.provinceNames[selectIndex]).key; } } EditorGUILayout.LabelField("", GUILayout.Width(lableWidth)); EditorGUILayout.LabelField("省份编辑", GUILayout.Width(60)); EditorGUILayout.EndHorizontal(); scroll = GUILayout.BeginScrollView(scroll); { HeadState state = HeadState.Nomal; for (int i = 0; i < PlayModeTools.data.configs.Count; i++) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.BeginVertical(GUILayout.Width(490)); if (editIndex == i) { state = HeadState.Edit; } else { state = HeadState.Nomal; } if (DrawItemHeader(PlayModeTools.data.configs[i], ref state, i)) { // if(i == 0) // Debug.Log(state); switch (state) { case HeadState.Nomal: editIndex = i; break; default: editIndex = i; if (i < PlayModeTools.data.configs.Count) { DrawItem(PlayModeTools.data.configs[i], i); } break; } } EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } GUILayout.EndScrollView(); GUILayout.Space(5); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("+", "OL Titlemid", GUILayout.Width(PlayModeEditorWindow.window.maxSize.x))) { ProvinceData config = new ProvinceData(); config.key = PlayModeTools.data.GetConfigNextId(); config.name = "新增的省份"; config.shortName = "新省"; config.gameName = "NewProvince"; config.configs.Add(PublicConfig.instance.GetClone()); PlayModeTools.data.configs.Add(config); } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal("TextArea", GUILayout.MinHeight(100)); EditorGUILayout.BeginVertical(GUILayout.Width(85)); EditorGUILayout.LabelField(" ", GUILayout.Width(85)); EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("手动保存", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.SaveData(); if (EditorUtility.DisplayDialog("提示", "已手动保存!", "知道了")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("生成Lua配置", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.ExportLuaScript(); if (EditorUtility.DisplayDialog("提示", "已生成全国与省份配置!", "确定")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(100)); EditorGUILayout.LabelField(" ", GUILayout.Width(5), GUILayout.Height(25)); if (GUILayout.Button("生成全国Lua配置", GUILayout.Width(100), GUILayout.Height(50))) { PlayModeTools.ExportProvinceLuaScript(); if (EditorUtility.DisplayDialog("提示", "已导出全国Lua文件至" + PlayModeTools.provinceLuaPath, "确定")) //显示对话框 { } } EditorGUILayout.EndVertical(); EditorGUILayout.BeginVertical(GUILayout.Width(75)); EditorGUILayout.LabelField(" ", GUILayout.Width(75)); EditorGUILayout.EndVertical(); EditorGUILayout.EndHorizontal(); } EditorGUILayout.EndVertical(); }
// Update is called once per frame void Update() { switch (hS) { case HeadState.idle: { break; } case HeadState.kissMove: { MoveHead(moveSpeed); if (isLeft && endPos < transform.position.x) { hS = HeadState.kissFinish; Instantiate(goodFx, Vector3.zero, Quaternion.identity); AudioStatics.PlayOneShotAtLocation("event:/sfx_kiss_success", Vector3.zero); } if (!isLeft && endPos > transform.position.x) { hS = HeadState.kissFinish; } break; } case HeadState.headButt: { if (isLeft && endPos < transform.position.x + 1) { AudioStatics.PlayOneShotAtLocation("event:/sfx_kiss_fail", Vector3.zero); transform.rotation = Quaternion.Euler(0, 0, -30); hS = HeadState.kissFinish; Instantiate(badFx, Vector3.zero, Quaternion.identity); } else if (!isLeft && endPos > transform.position.x - 1) { transform.rotation = Quaternion.Euler(0, 0, 30); hS = HeadState.kissFinish; } else { MoveHead(moveSpeed); } break; } case HeadState.beginGame: { MoveHead(moveSpeed); if (isLeft && gamePos < transform.position.x) { hS = HeadState.idle; //SetIsTalking(true); } if (!isLeft && gamePos > transform.position.x) { hS = HeadState.idle; //SetIsTalking(true); } break; } default: { break; } } }
public void ShakeForever() { _shakeTime = TimeSpan.FromDays( 100 ); _headState = HeadState.Open; _timeSinceShake = TimeSpan.Zero; _shook = false; _shakeStart = TimeSpan.Zero; }
protected override void Awake() { _head = Allocate <HeadState>(); _head.SetName("head"); _current = _head; }
protected override void Awake() { _head = new HeadState(); //_states = new List<BaseState>(); _pool = new StatePool(); }
protected override void OnDispose() { Recyle(_head); _current = _head = null; }