public bool CreateWaitGoToCheckPoint(PackageWaitCheckPoint data) { mPackageWaitCheckPoint = data; GameObject checkPoint = AutoTileMap_Editor.Instance.CreateItem("OBJ/CheckPoint", data.X, data.Y); if (checkPoint == null) { return(false); } checkPoint.name = "Item_MainCharAction_WaitMoveToPos"; var col = checkPoint.AddComponent <BoxCollider>(); col.center = new Vector3(0, -0.5f, 0); col.isTrigger = true; checkPoint.AddComponent <CollisionCallback>().mOnMainCharEnter = (Collider c) => { if (checkPoint != null) { GameObject.Destroy(checkPoint); } var action = mPackageWaitCheckPoint.Callback; mPackageWaitCheckPoint = null; action(); }; return(true); }
public bool WaitGoToCheckPoint(ScriptGame scriptGame, int x, int y, OnMainCharWasToCheckPoint callBack) { if (IsMainChar_Wait_To_Interaction()) { return(false); } var packageWaitCheckPoint = new PackageWaitCheckPoint { ScriptGame = scriptGame, X = x, Y = y, Callback = callBack }; return(CreateWaitGoToCheckPoint(packageWaitCheckPoint)); }