private void Start() { OnSetPassiveRadarTarget += OnSetPassiveRadarTargetEvent; OnNotifyActiveRadarForNewTarget += OnNotifyActiveRadarToAssignTargetEvent; OnClearPassiveRadarTarget += OnClearPassiveRadarTargetEvent; var rs = parentBlock.GetComponent <RocketScript>(); if (rs == null) { return; } int id = parentBlock.ParentMachine.PlayerID; KeyCode key = rs.GroupFireKey.GetKey(0); if (!tempRadarSet.ContainsKey(id)) { tempRadarSet.Add(id, new Dictionary <KeyCode, HashSet <RadarScript> >()); } if (!tempRadarSet[id].ContainsKey(key)) { tempRadarSet[id].Add(key, new HashSet <RadarScript>()); } }
// ブロック設置時に、そのブロックに所定のスクリプトを貼り付ける関数 // Blockは、設置したブロックを表す public void AddScript(Block block) { // 生成したブロックのBlockBehaviourコンポーネントを取得する BlockBehaviour internalObject = block.BuildingBlock.InternalObject; // そのブロックがスクリプトを貼り付けるべきブロックであるなら、貼り付ける if (BlockDict.ContainsKey(internalObject.BlockID)) { Type type = BlockDict[internalObject.BlockID]; try { // まだ所定のスクリプトが貼り付けられていない場合にのみ、貼り付ける if (internalObject.GetComponent(type) == null) { internalObject.gameObject.AddComponent(type); Mod.Log("Added Script"); } } catch { Mod.Error("AddScript Error!"); } return; } }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public FlyingSpiral(BlockBehaviour bb) : base(bb) { fc = bb.GetComponent <FlyingController>(); automaticToggle = automaticFieldInfo.GetValue(fc) as MToggle; toggleMode = toggleFieldInfo.GetValue(fc) as MToggle; reverseToggle = reverseFieldInfo.GetValue(fc) as MToggle; rigidbody = rigidbodyFieldInfo.GetValue(fc) as Rigidbody; }
public override void Plug(BlockBehaviour blockBehaviour) { base.Plug(blockBehaviour); _isDisplaced = false; _directionOfTravel = BlockFace.Unknown; _block = blockBehaviour; _animator = blockBehaviour.GetComponent <Animator>(); }
public override void Plug(BlockBehaviour blockBehaviour) { base.Plug(blockBehaviour); _renderer = blockBehaviour.GetComponent <Renderer>(); _cameraController = Camera.main.GetComponent <CameraController>(); _block = blockBehaviour; _cameraController.AddFadeoutTarget(this); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public BlockHandler(BlockBehaviour bb) { this.bb = bb; this.bs = bb.GetComponent <BlockScript>(); BlockHandlerController.OnUpdate += Update; BlockHandlerController.OnLateUpdate += LateUpdate; BlockHandlerController.OnFixedUpdate += FixedUpdate; }
/// <summary> /// Creates a Block handler. /// </summary> public Block(BlockBehaviour bb) { Bb = bb; Bs = bb.GetComponent <BlockScript>(); OnUpdate += Update; OnLateUpdate += LateUpdate; OnFixedUpdate += FixedUpdate; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Piston(BlockBehaviour bb) : base(bb) { sc = bb.GetComponent <SliderCompress>(); toggleMode = toggleFieldInfo.GetValue(sc) as MToggle; extendKey = extendFieldInfo.GetValue(sc) as MKey; defaultStartLimit = sc.startLimit; defaultNewLimit = sc.newLimit; }
public override void Plug(BlockBehaviour blockBehaviour) { base.Plug(blockBehaviour); _renderer = blockBehaviour.GetComponent <Renderer>(); _renderer.shadowCastingMode = ShadowCastingMode.Off; CameraController cameraController = Camera.main.GetComponent <CameraController>(); _block = blockBehaviour; cameraController.AddFadeoutTarget(this); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Piston(BlockBehaviour bb) : base(bb) { _sc = bb.GetComponent <SliderCompress>(); _toggleMode = ToggleFieldInfo.GetValue(_sc) as MToggle; _extendKey = ExtendFieldInfo.GetValue(_sc) as MKey; _defaultStartLimit = _sc.startLimit; _defaultNewLimit = _sc.newLimit; }
public void PlaceAdditionScripts(BlockBehaviour block) { // Reset state for all patches for FPIO controlled blocks foreach (var kp in AdditionScripts) { if (kp.Key.IsInstanceOfType(block)) { (block.GetComponent(kp.Value) as AdditionScript)?.Reset(); } } }
/// <summary>零件添加进阶属性控件 </summary> private void AddSliders(BlockBehaviour block) { if (dic_EnhancementBlock.ContainsKey(block.BlockID)) { var EB = dic_EnhancementBlock[block.BlockID]; if (block.GetComponent(EB) == null) { block.gameObject.AddComponent(EB); } } }
public override void Initialize() { if (initialized) { return; } BlockBehaviour block = PrefabMaster.GetBlock(myIndex); if (block != null) { blockInfo = block.GetComponent <MyBlockInfo>(); } initialized = true; }
/// <summary>添加进阶属性</summary> private void AddSliders(BlockBehaviour block) { #if DEBUG //ConsoleController.ShowMessage(string.Format("Block ID: {0}", block.BlockID.ToString())); #endif if (dic_EnhancementBlock.ContainsKey(block.BlockID)) { var EB = dic_EnhancementBlock[block.BlockID]; if (block.GetComponent(EB) == null) { block.gameObject.AddComponent(EB); } } }
/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="block"></param> /// <param name="blockType"></param> public static void SetComponent <T>(BlockBehaviour block, BlockType blockType) where T : Component { T component = block.GetComponent <T>(); if (block.GetBlockID() == (int)blockType) { if (component == null) { block.gameObject.AddComponent <T>(); } } else { if (component != null) { Destroy(component); } } }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Steering(BlockBehaviour bb) : base(bb) { _sw = bb.GetComponent <SteeringWheel>(); _speedSlider = SpeedSliderField.GetValue(_sw) as MSlider; _limitsSlider = LimitsSliderField.GetValue(_sw) as MLimits; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Steering(BlockBehaviour bb) : base(bb) { sw = bb.GetComponent <SteeringWheel>(); speedSlider = speedSliderField.GetValue(sw) as MSlider; limitsSlider = limitsSliderField.GetValue(sw) as MLimits; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Vacuum(BlockBehaviour bb) : base(bb) { _vb = bb.GetComponent <VacuumBlock>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Crossbow(BlockBehaviour bb) : base(bb) { _cbb = bb.GetComponent <CrossBowBlock>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Spring(BlockBehaviour bb) : base(bb) { sc = bb.GetComponent <SpringCode>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Cog(BlockBehaviour bb) : base(bb) { cmc = bb.GetComponent <CogMotorControllerHinge>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public WaterCannon(BlockBehaviour bb) : base(bb) { wcc = bb.GetComponent <WaterCannonController>(); holdToShootToggle = holdFieldInfo.GetValue(wcc) as MToggle; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Grenade(BlockBehaviour bb) : base(bb) { cb = bb.GetComponent <ControllableBomb>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Grabber(BlockBehaviour bb) : base(bb) { var gb = bb.GetComponent <GrabberBlock>(); _join = JoinFieldInfo.GetValue(gb) as JoinOnTriggerBlock; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Cannon(BlockBehaviour bb) : base(bb) { cb = bb.GetComponent <CanonBlock>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Decoupler(BlockBehaviour bb) : base(bb) { eb = bb.GetComponent <ExplosiveBolt>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Flamethrower(BlockBehaviour bb) : base(bb) { fc = bb.GetComponent <FlamethrowerController>(); holdToFire = holdFieldInfo.GetValue(fc) as MToggle; }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public Rocket(BlockBehaviour bb) : base(bb) { tr = bb.GetComponent <TimedRocket>(); }
/// <summary> /// Creates a Block handler. /// </summary> /// <param name="bb">BlockBehaviour object.</param> public FlyingSpiral(BlockBehaviour bb) : base(bb) { _fc = bb.GetComponent <FlyingController>(); _toggleMode = ToggleFieldInfo.GetValue(_fc) as MToggle; _rigidbody = RigidbodyFieldInfo.GetValue(_fc) as Rigidbody; }