void Start() { _block = GetComponent<PlayerBlock>(); _inputToggle = GetComponent<ToggleEnableInput>(); _playersounds = GetComponent<PlayerSounds>(); _movement = GetComponent<PlayerMovement>(); _rigidBody = GetComponent<Rigidbody>(); }
void Start() { _block = GetComponent<PlayerBlock>(); _rigidBody = GetComponent<Rigidbody>(); _inputToggle = GetComponent<ToggleEnableInput>(); _movement = GetComponent<PlayerMovement>(); _damageAmount = GetComponentInChildren<Damage>(); _damageBase = _damageAmount.damage; }
void Start() { _inputToggle = GetComponent<ToggleEnableInput>(); _attack = GetComponent<PlayerAttack>(); _block = GetComponent<PlayerBlock>(); _movement = GetComponent<PlayerMovement>(); _rotation = GameObject.Find("CameraController").GetComponent<CameraMovement>(); _dodge = GetComponent<PlayerRoll>(); }
public static void SplitBlock(this PlayerBlock p, Bidivisor b) { Vector2 pos = p.GetGlobalPosition(); pos.x = pos.x * -1 + 1920; PackedScene blockScene = (PackedScene)ResourceLoader.Load("res://Objects/PlayerBlock.tscn"); PlayerBlock[] newBlocks = new PlayerBlock[2]; for (int i = 0; i < 2; i++) { newBlocks[i] = (PlayerBlock)blockScene.Instance(); newBlocks[i].duplicating = 8; b.GetTree().GetRoot().GetChild(0).GetChild(1).AddChild(newBlocks[i]); newBlocks[i].Set("rotation_degrees", -b.GetRotationDegrees() - 45 + 90 * i); newBlocks[i].GlobalPosition = pos; newBlocks[i].jumpIndex = p.jumpIndex == 0 ? 1 : 0; newBlocks[i].MoveLocalY(-newBlocks[i].jump[(newBlocks[i].jumpIndex)]); } ((GameScene)(b.GetTree().GetRoot().GetChild(0))).PlayerNumber.Remove(p); p.QueueFree(); }
private void ReInitialize() { pTrigger = GameObject.Find("/Canvas MainWorld/BlockButton").GetComponent <EventTrigger>(); Debug.Assert(pTrigger != null); pBlock = GetComponent <PlayerBlock>(); Debug.Assert(pBlock != null); EventTrigger.Entry entry = new EventTrigger.Entry(); entry.eventID = EventTriggerType.PointerDown; call = new UnityAction <BaseEventData>(PointerDown); entry.callback = new EventTrigger.TriggerEvent(); entry.callback.AddListener(call); pTrigger.triggers.Add(entry); entry = new EventTrigger.Entry(); entry.eventID = EventTriggerType.PointerUp; call = new UnityAction <BaseEventData>(PointerUp); entry.callback = new EventTrigger.TriggerEvent(); entry.callback.AddListener(call); pTrigger.triggers.Add(entry); }
void OnEnable() { PlayerStarter = this; }
void Start() { _inputToggle = GetComponent<ToggleEnableInput>(); _block = GetComponent<PlayerBlock>(); _cameraMovement = GameObject.Find("CameraController").GetComponent<CameraMovement>(); }
private void Awake() { Instance = this; SpawnPlayer(); }
private void Awake() { m_BlockAction = GetComponentInParent <PlayerBlock>(); }
public override void OnInspectorGUI() { //不需要base.OnInspectorGUI (); EditorGUILayout.BeginVertical(); bool oldUpperLayer = voxelMap.isUpperLayer; voxelMap.isUpperLayer = EditorGUILayout.Toggle("is up layer:", voxelMap.isUpperLayer); if (oldUpperLayer != voxelMap.isUpperLayer) { //ChangeActiveLayer (); } EditorGUILayout.BeginHorizontal(); bool oldDispUpeerLayerGizmo = voxelMap.displayUpperGizmo; voxelMap.displayUpperGizmo = EditorGUILayout.Toggle("Switch Gizmo Upper / Lower :", voxelMap.displayUpperGizmo); if (oldDispUpeerLayerGizmo != voxelMap.displayUpperGizmo) { //ChangeActiveLayer (); } EditorGUILayout.EndHorizontal(); //如果旧的地图尺寸和新的不同,则进行 Vector2 oldSize = voxelMap.mapSize; voxelMap.mapSize = EditorGUILayout.Vector2Field("Voxel Map Size", voxelMap.mapSize); if (oldSize != voxelMap.mapSize) { UpdateCalculations(); } //如果基准方块被改变则重新建立笔刷 GameObject oldBasicBlock = voxelMap.basicBlock; voxelMap.basicBlock = (GameObject)EditorGUILayout.ObjectField("Basic Object:", voxelMap.basicBlock, typeof(GameObject), false); if (oldBasicBlock != voxelMap.basicBlock) { UpdateCalculations(); voxelMap.blockID = 0; CreateBrush(); } //选择需要加入保存的方块类型 blockType = (BlockType)EditorGUILayout.EnumPopup("Block Type", blockType); //输入对于方块合适的名字 blockName = (string)EditorGUILayout.TextField("New Blcok Name", blockName); if (GUILayout.Button("Add New Blcoksd")) { //必须命名 if (blockName != "") { if (blockType != BlockType.None) { switch (blockType) { case BlockType.Floor: FloorBlock floorBlock = new FloorBlock(blockName); //为了防止反序列化时没有数据恢复,需要手动赋值一次 floorBlock.BlockType = BlockType.Floor; voxelMap.allBlocks.Add(floorBlock); break; case BlockType.Wall: WallBlock wallBlock = new WallBlock(blockName); wallBlock.BlockType = BlockType.Wall; voxelMap.allBlocks.Add(wallBlock); break; case BlockType.Player: PlayerBlock playerBlock = new PlayerBlock(blockName); playerBlock.BlockType = BlockType.Player; voxelMap.allBlocks.Add(playerBlock); break; case BlockType.Enemy: EnemyBlock enemyBlock = new EnemyBlock(blockName); enemyBlock.BlockType = BlockType.Enemy; voxelMap.allBlocks.Add(enemyBlock); break; case BlockType.Door: DoorBlock doorBlock = new DoorBlock(blockName); doorBlock.BlockType = BlockType.Door; voxelMap.allBlocks.Add(doorBlock); break; } blockType = BlockType.None; } } } //保存所有的类型进入对应的数组 //QuickSort (voxelMap.allBlocks, 0, voxelMap.allBlocks.Count); //List<BasicBlock> tmp = new List<BasicBlock> (); //tmp [1] = new FloorBlock ("hy"); //tmp [0] = new //QuickSorting.QuickSort (); //显示现在保存的方块类型 for (int i = 0; i < voxelMap.allBlocks.Count; i++) { EditorGUILayout.BeginHorizontal(); voxelMap.allBlocks [i].m_gameobject = (GameObject)EditorGUILayout.ObjectField(voxelMap.allBlocks [i].m_name + " " + voxelMap.allBlocks [i].GetType(), voxelMap.allBlocks [i].m_gameobject, typeof(GameObject), false); //删除预设方块 if (GUILayout.Button("Delete")) { Debug.Log("Delete" + i + voxelMap.allBlocks [i].m_name); voxelMap.allBlocks.Remove(voxelMap.allBlocks [i]); } EditorGUILayout.EndHorizontal(); } //refresh brush mesh to new brush, UpdateBrush(voxelMap.GetBlockBrush.m_gameobject.GetComponentInChildren <MeshFilter> (), voxelMap.GetBlockBrush.m_gameobject.GetComponentInChildren <MeshRenderer> ()); if (GUILayout.Button("Clear Blocks")) { if (EditorUtility.DisplayDialog("Clear map's blocks?", "Are you sure?", "Clear", "Do not clear")) { ClearMap(); } } EditorGUILayout.EndVertical(); }