public override void OnClear() { base.OnClear(); NetworkNode.SetSpriteActiveColor(LockBackgroundSprite, false); for (int i = 0; i < NetworkNode.NeighborNum; i++) { if (InputLockSetting[i]) { NetworkNode.SetSpriteActiveColor(InputLockSprites[i], false); } } }
public override void OnInput(NetworkNode.Direction from, bool isActive) { base.OnInput(from, isActive); int i = (int)from; if (InputLockSetting[i]) { // OnLockChanged(from, isActive); NetworkNode.SetSpriteActiveColor(InputLockSprites[i], isActive); } CheckLocks(); }
private void CheckLocks() { IsUnlocked = true; for (int i = 0; i < NetworkNode.NeighborNum; i++) { if (InputLockSetting[i] && !node.Inputs[i]) { IsUnlocked = false; break; } } NetworkNode.SetSpriteActiveColor(LockBackgroundSprite, IsUnlocked); if (OnCheckAllLock != null) { OnCheckAllLock(IsUnlocked); } }