void EnterActor(ActorInfo info, ActorInfo.ActorState actorState, float posX) { CreateActorRoot(info, actorState); GameObject go = GameObject.Find(info.actorName); //actorState.dataArray[ i ].parentname + "/" + actorState ); if (go != null) { Vector3 pos = go.transform.localPosition; pos.x = posX; go.transform.localPosition = pos; } for (int i = 0; i < actorState.dataArray.Length; i++) { actorState.dataArray[i].parentname = info.actorName; actorState.dataArray[i].sclZ = 1f; SceneCreator.Create(actorState.dataArray[i]); /* * go = GameObject.Find( actorState.dataArray[ i ].parentname + "/" + actorState.dataArray[ i ].name ); * if( go != null ){ * Vector3 pos = go.transform.localPosition; * pos.x = posX; * go.transform.localPosition = pos; * } * //*/ } }
void CreateChildLayer(ActorInfo info, ActorInfo.ActorState actorState) { for (int i = 0; i < actorState.dataArray.Length; i++) { actorState.dataArray[i].parentname = info.actorName; actorState.dataArray[i].sclZ = 1f; SceneCreator.Create(actorState.dataArray[i]); } }
GameObject CreateActorRoot(ActorInfo info, ActorInfo.ActorState actorState) { float scl = actorState.sizeInPercent / 100f; SceneData.SceneNodeData actorNodeData = new SceneData.SceneNodeData(); actorNodeData.name = info.actorName; actorNodeData.parentname = ViNoSceneManager.Instance.theSavedPanel.name; actorNodeData.sclX = scl; actorNodeData.sclY = scl; actorNodeData.sclZ = 1f; actorNodeData.alpha = 1f; actorNodeData.show = true; GameObject actorGO = SceneCreator.Create(actorNodeData); // m_ActorGOMap[ info.actorName ] = actorGO; return(actorGO); }
void OnEnterActor(string actorName, ActorPosition actorPos) { if (actorLib != null) { // for( int i=0;i<actorLib.actorEntries.Length;i++){ // ActorInfo actorInfo = actorLib.actorEntries[ i ]; // if( actorInfo.actorName == actorName ){ if (m_ActorMap.ContainsKey(actorName)) { ActorInfo actorInfo = m_ActorMap[actorName]; // Debug.Log( "matched Actor Name ," + actorName + " and Enter this actor." ); ActorInfo.ActorState currentActorState = actorInfo.baseActorState; float posX = GetPositionX(actorPos); EnterActor(actorInfo, currentActorState, posX); return; } } // } else { Debug.Log("ActorLibrary not attached. couldn't enter actor : " + actorName); } }
/* IEnumerator Shake( GameObject obj ){ * yield return new WaitForSeconds( ); * * } * //*/ void EnterActor(ActorInfo info, ActorInfo.ActorState actorState) { CreateActorRoot(info, actorState); CreateChildLayer(info, actorState); }
void changestate(Hashtable param) { // Debug.Log( "OnChangeState" ); if (actorLib != null) { string actorName = param["name"] as string; string state = param["state"] as string; bool fadein = false; if (param.ContainsKey("fade")) { string fade = param["fade"] as string; fadein = (fade == "true") ? true : false; } // Fade in Start ?. ISpriteFactory._FADEIN_AT_CREATE = fadein; // Fadeout and destroy childs. if (fadein) { string destroyRootName = actorName + " will_Destroy"; GameObject _destroyRoot = GameObject.Find(destroyRootName); if (_destroyRoot == null) { _destroyRoot = new GameObject(destroyRootName); } GameObject actor = GameObject.Find(actorName); Transform actorTra = actor.transform; int childNum = actorTra.GetChildCount(); // Rename Actors. while (childNum > 0) { Transform tra = actorTra.GetChild(0); tra.name = tra.name + "_"; // Debug.Log( "Destroy:" + tra.name ); tra.parent = _destroyRoot.transform; childNum = actorTra.GetChildCount(); } // _destroyRoot.transform.parent = .transform; SceneCreator.DestroyScene(_destroyRoot, !fadein); // Fade and Destroy Actor. } // Debug.Log ( "State:" + state ); if (m_ActorMap.ContainsKey(actorName)) { ActorInfo actorInfo = m_ActorMap[actorName]; // Debug.Log ( "Actor Matched.:" + actorName ); for (int k = 0; k < actorInfo.actorStates.Length; k++) { if (actorInfo.actorStates[k].stateName == state) { ActorInfo.ActorState actorState = actorInfo.actorStates[k]; CreateChildLayer(actorInfo, actorState); break; } } } } }