// Use this for initialization void InitActionGroup(StroyLineConfigData initStroyLineData) { for (int i = 0; i < EditorDataManager.Instance.StroyLineTempData.Count; i++) { if (EditorDataManager.Instance.StroyLineTempData[i]._StroyLineID == initStroyLineData._StroyLineID) { EditorDataManager.Instance.StroyLineTempData.RemoveAt(i); } } EditorDataManager.Instance.StroyLineTempData.Add(initStroyLineData); int iRow = 0; GameObject mapIDItem = (GameObject)Instantiate(ActionGroupItem); mapIDItem.transform.parent = this.transform; mapIDItem.transform.localScale = Vector3.one; mapIDItem.transform.localPosition = new Vector3(0, -20 + iRow * -40, 0); mapIDItem.GetComponent <ActionGroupItem>().InitGroupItem(initStroyLineData, GroupType.MAPID); m_curObjectList.Add(mapIDItem); iRow += 1; GameObject bgMusicItem = (GameObject)Instantiate(ActionGroupItem); bgMusicItem.transform.parent = this.transform; bgMusicItem.transform.localScale = Vector3.one; bgMusicItem.transform.localPosition = new Vector3(0, -20 + iRow * -40, 0); bgMusicItem.GetComponent <ActionGroupItem>().InitGroupItem(initStroyLineData, GroupType.BGMUSIC); m_curObjectList.Add(bgMusicItem); iRow += 1; GameObject conditionItem = (GameObject)Instantiate(ActionGroupItem); conditionItem.transform.parent = this.transform; conditionItem.transform.localScale = Vector3.one; conditionItem.transform.localPosition = new Vector3(0, -20 + iRow * -40, 0); conditionItem.GetComponent <ActionGroupItem>().InitGroupItem(initStroyLineData, GroupType.CONDITION); m_curObjectList.Add(conditionItem); iRow += 1; GameObject ectypeIDItem = (GameObject)Instantiate(ActionGroupItem); ectypeIDItem.transform.parent = this.transform; ectypeIDItem.transform.localScale = Vector3.one; ectypeIDItem.transform.localPosition = new Vector3(0, -20 + iRow * -40, 0); ectypeIDItem.GetComponent <ActionGroupItem>().InitGroupItem(initStroyLineData, GroupType.ECTYPEID); m_curObjectList.Add(ectypeIDItem); for (int i = 0; i < initStroyLineData._CameraGroup.Count; i++) { iRow += 1; GameObject cameraGroupItem = (GameObject)Instantiate(ActionGroupItem); cameraGroupItem.transform.parent = this.transform; cameraGroupItem.transform.localScale = Vector3.one; cameraGroupItem.transform.localPosition = new Vector3(0, -20 + iRow * -40, 0); cameraGroupItem.GetComponent <ActionGroupItem>().InitCameraGroup(initStroyLineData._CameraGroup[i], i); m_curObjectList.Add(cameraGroupItem); } }
void OkEvent(GameObject go) { HidePanel(); switch (m_createType) { case CreateType.STROYLINE: StroyLineConfigData stroyline = new StroyLineConfigData(); CreateStroyLine(stroyline); break; case CreateType.ACTION: StroyActionConfigData actionData = new StroyActionConfigData(); CreateStroyAction(actionData); break; case CreateType.CAMERACLIP: StroyCameraConfigData cameraData = new StroyCameraConfigData(); CreateStroyCameraClip(cameraData); break; default: break; } HidePanel(); }
//返回场景ID private int DealRequestEctypeSceneChange(SMsgActionNewWorld_SC targetScene) { //此时mapID是否生效问题,当其为0,1时再次请求,如果为2时 if (targetScene.dwMapParam != 0) { if (IsCreateRoleStroyLine((int)targetScene.dwMapParam)) { EctypeModel.Instance.SetPreEctypeID(CommonDefineManager.Instance.CommonDefine.TUTORIAL_ECTYPE_ID); } //当剧情ID不为0,说明存在要播放剧情// foreach (var stroyLineConfig in StroyLineConfigManager.Instance.GetStroyLineConfig) { if (stroyLineConfig.Value._StroyLineID == targetScene.dwMapParam) { storyConfigData = stroyLineConfig.Value; StroyLineDataManager.Instance.curStroyLineKey = new StroyLineKey { VocationID = storyConfigData._TriggerVocation, ConditionID = storyConfigData._TriggerCondition, EctypeID = storyConfigData._EctypeID }; return(stroyLineConfig.Value._SceneMapID); } } } return(0); }
public void CreateStroyLineData(StroyLineConfigData stroyline) { m_winType = WinType.CameraGroup; m_curTitleName = "新建镜头组窗口"; m_stroyLineData = stroyline; m_isNewCreate = true; m_isShowWindow = true; }
public StroyLineConfigData Clone() { StroyLineConfigData tempObj = (StroyLineConfigData )this.MemberwiseClone(); if (_CameraGroup != null) { tempObj._CameraGroup = new List <int>(this._CameraGroup);//(int[])this._CameraGroup.Clone(); } return(tempObj); }
void CreateStroyLine(StroyLineConfigData stroyline) { stroyline._BgMusic = ""; stroyline._CameraGroup = new List <int>(); stroyline._EctypeID = 0; stroyline._SceneMapID = 0; stroyline._TriggerCondition = 1; stroyline._StroyLineID = 0; StroyEditorUIManager.Instance.CreateStroyLineData(stroyline); }
void InitEditorUI(StroyLineConfigData stroyline) { GameObject editorItem = (GameObject)Instantiate(StroyLineItem); editorItem.transform.parent = this.transform; editorItem.transform.localScale = Vector3.one; editorItem.transform.localPosition = new Vector3(-500, 300 + m_iRow++ *-45, 0); editorItem.GetComponent <EditorCheckbox>().InitCheckbox(stroyline._EctypeID, stroyline._TriggerCondition, stroyline._StroyLineID.ToString(), CheckboxType.StroyLine, stroyline._TriggerVocation); m_checkboxList.Add(editorItem); UICheckbox uiCheckbox = editorItem.GetComponent <UICheckbox>(); uiCheckbox.radioButtonRoot = this.transform; }
private static void StroyLineConfigPostprocess() { string path = System.IO.Path.Combine(RESOURCE_STROY_CONFIG_FOLDER, "StroyLineConfig.xml"); TextReader tr = new StreamReader(path); string text = tr.ReadToEnd(); if (text == null) { Debug.LogError("stroyline config file not exist"); return; } else { XmlSpreadSheetReader.ReadSheet(text); XmlSpreadSheet sheet = XmlSpreadSheetReader.Output; string[] keys = XmlSpreadSheetReader.Keys; object[] levelIds = sheet[keys[0]]; List <StroyLineConfigData> tempList = new List <StroyLineConfigData>(); for (int i = 0; i < levelIds.Length; i++) { if (0 == i || 1 == i) { continue; } StroyLineConfigData data = new StroyLineConfigData(); data._StroyLineID = Convert.ToInt32(sheet["StroyLineID"][i]); data._SceneMapID = Convert.ToInt32(sheet["SceneMapID"][i]); data._BgMusic = Convert.ToString(sheet["BgMusic"][i]); data._TriggerVocation = Convert.ToInt32(sheet["TriggerProfession"][i]); data._TriggerCondition = Convert.ToInt32(sheet["TriggerCondition"][i]); data._EctypeID = Convert.ToInt32(sheet["EctypeID"][i]); string cameraStr = Convert.ToString(sheet["CameraGroup"][i]); string[] splitCameraStr = cameraStr.Split("+".ToCharArray()); data._CameraGroup = new List <int>();//new int[splitCameraStr.Length]; data.WeaponType = Convert.ToInt32(sheet["WeaponType"][i]); for (int j = 0; j < splitCameraStr.Length; j++) { data._CameraGroup.Add(Convert.ToInt32(splitCameraStr[j])); } tempList.Add(data); } CreateStroyLineConfigDataBase(tempList); } }
// Use this for initialization public void InitGroupItem(StroyLineConfigData item, GroupType groupType) { m_stroyLineData = item; int iRow = 0; switch (groupType) { case GroupType.MAPID: UILabel.text = "场景地图"; GameObject OptionMapID = (GameObject)Instantiate(OptionInput); OptionMapID.transform.parent = this.Tween.transform; OptionMapID.transform.localScale = Vector3.one; OptionMapID.transform.localPosition = new Vector3(0, -45 + iRow * -40, 0); OptionMapID.GetComponent <OptionInputPanel>().InitInput(item._SceneMapID.ToString(), "地图", groupType); break; case GroupType.BGMUSIC: UILabel.text = "背景音乐"; GameObject OptionMusic = (GameObject)Instantiate(OptionInput); OptionMusic.transform.parent = this.Tween.transform; OptionMusic.transform.localScale = Vector3.one; OptionMusic.transform.localPosition = new Vector3(0, -45 + iRow * -40, 0); OptionMusic.GetComponent <OptionInputPanel>().InitInput(item._BgMusic, "音乐", groupType); break; case GroupType.CONDITION: UILabel.text = "触发条件"; GameObject OptionCondition = (GameObject)Instantiate(OptionInput); OptionCondition.transform.parent = this.Tween.transform; OptionCondition.transform.localScale = Vector3.one; OptionCondition.transform.localPosition = new Vector3(0, -45 + iRow * -40, 0); OptionCondition.GetComponent <OptionInputPanel>().InitInput(item._TriggerCondition.ToString(), "条件", groupType); break; case GroupType.ECTYPEID: UILabel.text = "触发副本"; GameObject OptionEctype = (GameObject)Instantiate(OptionInput); OptionEctype.transform.parent = this.Tween.transform; OptionEctype.transform.localScale = Vector3.one; OptionEctype.transform.localPosition = new Vector3(0, -45 + iRow * -40, 0); OptionEctype.GetComponent <OptionInputPanel>().InitInput(item._EctypeID.ToString(), "副本", groupType); break; default: break; } }
/// <summary> /// 进否进入剧情[貌似没有使用] /// </summary> /// <param name="onSelectEctypeData">当前所选择的副本</param> public void CurSelectEctype(SMSGEctypeData_SC onSelectEctypeData) { m_curSelectEctypeData = onSelectEctypeData; int vocation = PlayerManager.Instance.FindHeroDataModel().PlayerValues.PlayerCommonValue.PLAYER_FIELD_VISIBLE_VOCATION; EctypeSelectConfigData item = null; //todo:onSelectEctypeData协议已经取消难度dwEctypeID和byDiff难度,如果使用需要从新更改 //EctypeConfigManager.Instance.EctypeSelectConfigList.TryGetValue((int)onSelectEctypeData.dwEctypeID, out item); if (item == null) { return; } int _ectypeid = 0;// = item._vectContainer[(int)onSelectEctypeData.byDiff - 1]; StroyLineKey key = new StroyLineKey { VocationID = vocation, ConditionID = 0, EctypeID = _ectypeid }; if (StroyLineConfigManager.Instance.GetStroyLineConfig.ContainsKey(key) && _ectypeid > m_passEctypeId) { StroyLineConfigData stroyLineConfig = StroyLineConfigManager.Instance.GetStroyLineConfig[key]; m_curStroyMapID = stroyLineConfig._SceneMapID; m_curMapBgMusic = stroyLineConfig._BgMusic; m_curCameraGroupID = stroyLineConfig._CameraGroup; //1=进入触发;2=完成触发 if (StroyLineConfigManager.Instance.GetStroyLineConfig[key]._TriggerCondition == 1) { m_stroyLineType = StroyLineType.EctypeStart; } else if (StroyLineConfigManager.Instance.GetStroyLineConfig[key]._TriggerCondition == 2) { m_stroyLineType = StroyLineType.EctypeEnd; } //else // m_stroyLineType = StroyLineType.None; } //else //{ // m_stroyLineType = StroyLineType.None; //} }