void Start() { m_model = Context.model; SetModel(m_model); m_model.OnUpdated += () => { UpdateViews(); }; m_model.OnBeganShowingTitle += () => { ShowTitle(); }; RegisterKeyEventCallback("next", () => { m_model.ShowNext(); }); SetUpAnimations(); UpdateViews(); // MainMenuQuestStoryでインスタンス化終了タイミングを取れない造りなのでここで最初のアイコンアニメーション再生 // TODO : 個別のクラスにほかのクラスインスタンスがある前提の処理を書くのはよくないのでそうならないように造りを変える if (m_model.index == 0) { m_model.Appear(); } }
public void setupIcon() { AreaDataList.Clear(); var model = new AreaSelectListItemModel(0); model.OnAppeared += () => { model.ShowTitle(); }; if (IsIconView == false) { model.isActive = true; } else { model.isActive = false; } AreaDataContext newArea = new AreaDataContext(model); if (newArea != null) { newArea.m_AreaIndex = masters[currentIndex].fix_id; newArea.IsViewFlag = false; newArea.IsAreaNew = false; newArea.Title = masters[currentIndex].area_cate_name; newArea.PosX = 0; newArea.PosY = 0; // アセットバンドルの読み込み string assetBundleName = string.Format("areamapicon_{0}", masters[currentIndex].fix_id); // インジケーターを表示 LoadingManager.Instance.RequestLoadingStart(LOADING_TYPE.GUARD); AssetBundler.Create(). Set(assetBundleName, (o) => { newArea.IconImage = o.GetAsset <Sprite>(); newArea.IconImage_mask = o.GetTexture(newArea.IconImage.name + "_mask", TextureWrapMode.Clamp); LoadingManager.Instance.RequestLoadingFinish(LOADING_TYPE.GUARD); AreaDataList.Add(newArea); }, (s) => { newArea.IconImage = ResourceManager.Instance.Load("maeishoku_icon"); LoadingManager.Instance.RequestLoadingFinish(LOADING_TYPE.GUARD); }).Load(); } else { LoadingManager.Instance.RequestLoadingFinish(LOADING_TYPE.GUARD); } idInputField.text = masters[currentIndex].fix_id.ToString(); }
private AreaSelectListItemModel makeAreaSelectModel(int _index, uint _area_cate_id, bool bChallenge = false) { int index = _index; uint area_cate_id = _area_cate_id; System.Func <bool> IsLastestArea = () => { return(index == m_areaIcons.Count - 1); }; var model = new AreaSelectListItemModel((uint)index); if (bChallenge) { model.OnClicked += () => { OnSelectChallenge(); }; } else { model.OnClicked += () => { OnSelectArea(area_cate_id); }; } model.OnShowedNext += () => { if (IsLastestArea()) { m_AreaSelect.m_iconAnimationFinish = true; return; } m_areaIcons[index + 1].Appear(); }; model.OnAppeared += () => { if (!IsLastestArea()) { return; } foreach (var icon in m_areaIcons) { icon.ShowTitle(); } }; model.isActive = false; return(model); }
public void AddAreaData(uint _index, string _title, Sprite _image, Vector2 _pos, System.Action <uint> _action) { var model = new AreaSelectListItemModel(_index); model.OnClicked += () => { _action(model.index); }; AreaDataContext newArea = new AreaDataContext(model); newArea.m_AreaIndex = _index; newArea.Title = _title; newArea.IconImage = _image; newArea.PosX = _pos.x; newArea.PosY = _pos.y; AddAreaData(newArea); }
public AreaDataContext(AreaSelectListItemModel listItemModel) { m_model = listItemModel; }