//Атака void Update() { HB.GetComponentInChildren <TextMeshProUGUI>().text = $"{Mathf.Ceil(hp)}/{Mathf.Ceil(maxhp)}"; if ((Combat)) { if (fightController.AliveHeroes() == 0) { Combat = false; } else { if (AttackTimeout <= 0) { Attack(); } else { AttackTimeout -= Time.deltaTime; } } } if (hp <= 0) { //Удалить все эффекты fightController.enemies.Remove(this); DestroyHalo(halo); Destroy(gameObject); } }
void Update() { if (ready) { reloadTime = Math.Max(0f, reloadTime - Time.deltaTime); //!Переписать if (reloadTime != 0f) { for (int i = 0; i < 3; ++i) { SpellsIcons[i].GetComponent <SpriteRenderer>().color = Color.gray; } } else { for (int i = 0; i < 3; ++i) { SpellsIcons[i].GetComponent <SpriteRenderer>().color = Color.white; } } HB.GetComponentInChildren <TextMeshProUGUI>().text = $"{Mathf.Ceil(hp)}/{Mathf.Ceil(maxhp)}"; if (hp <= 0) { DestroyHalo(halo); Death(); } } }
static void Main(string[] args) { Console.WriteLine("Version string: " + HB.VersionString); Version v = HB.Version; Console.WriteLine("Version: " + v.Major + "." + v.Minor + "." + v.Build); Console.WriteLine("VersionCheck: " + HB.VersionAtLeast(v)); var lib = new Library(); var face = new SharpFont.Face(lib, @"C:\Windows\Fonts\tahoma.ttf"); face.SetCharSize(0, 50, 72, 72); var font = HarfBuzz.Font.FromFTFace(face); var buf = new HarfBuzz.Buffer(); buf.Direction = Direction.RightToLeft; buf.Script = Script.Arabic; buf.AddText("متن"); font.Shape(buf); var glyphInfos = buf.GlyphInfo(); var glyphPositions = buf.GlyphPositions(); int height = (face.MaxAdvanceHeight - face.Descender) >> 6; int width = 0; for (int i = 0; i < glyphInfos.Length; ++i) { width += glyphPositions[i].xAdvance >> 6; } Bitmap bmp = new Bitmap(width, height); Graphics g = Graphics.FromImage(bmp); g.Clear(Color.Gray); int penX = 0, penY = face.MaxAdvanceHeight >> 6; //draw the string for (int i = 0; i < glyphInfos.Length; ++i) { face.LoadGlyph(glyphInfos[i].codepoint, LoadFlags.Default, LoadTarget.Normal); face.Glyph.RenderGlyph(RenderMode.Normal); Bitmap cBmp = face.Glyph.Bitmap.ToGdipBitmap(Color.Firebrick); g.DrawImageUnscaled(cBmp, penX + (glyphPositions[i].xOffset >> 6) + face.Glyph.BitmapLeft, penY - (glyphPositions[i].yOffset >> 6) - face.Glyph.BitmapTop); penX += glyphPositions[i].xAdvance >> 6; penY -= glyphPositions[i].yAdvance >> 6; } g.Dispose(); bmp.Save("output.bmp"); }
void Start() { sprite = GetComponent <SpriteRenderer>(); rigidbody2D = GetComponent <Rigidbody2D>(); animator = spritePlayer.GetComponent <Animator>(); HB = GameObject.Find("HB"); hb = HB.GetComponent <HB>(); vida = maxVida; noOfClicks = 0; iFrame = 2; }
LynxPhotoViewControl selectedImage;//当前选择的 private void buttonClose_Click(object sender, RoutedEventArgs e) { bl = null; //photoTestToolbar1 = null; ImageBrightCurve.Children.Clear(); VB.Clear(); HB.Clear(); Panel p = this.Parent as Panel; if (p != null) { p.Children.Remove(this); } }
public void AddPhoto(WriteableBitmap photo) { if (selectedImage == null) { return; } if (selectedImage == HB) { HB.setPhoto(photo); bl[1] = photo; } if (selectedImage == VB) { VB.setPhoto(photo); bl[2] = photo; } }
new public void Update() { //base.Update(); if (hp <= 0) { //Удалить все эффекты fightController.enemies.Remove(this); DestroyHalo(halo); Death(); } HB.GetComponentInChildren <TextMeshProUGUI>().text = $"{Mathf.Ceil(hp)}/{Mathf.Ceil(maxhp)}"; if (time > 0) { time -= Time.deltaTime; } else { time = cooldown; float r = Random.Range(0, 2); switch (r) { case 0: SetTargetRandom(); StartCoroutine(AtakeAnim()); AttackTimeout = AttackCooldown; float dam = Random.Range(DamageMin, DamageMax) * (1 + power / 100); AttackTarget.TakeDamage(dam); TakeHeal(dam); StartCoroutine(AttackTarget.TakingDamageAnim()); break; case 1: foreach (var x in fightController.friends) { var st = Instantiate(vulnerability, x.transform); st.Name = "Уязвимость"; st.lifetime = 8; st.koef = Information.GetEffectStates("Уязвимость", 1, 0)[0]; st.character = x; x.TakeDamage(3); } break; } } }
public void RemovePhoto(WriteableBitmap b) { if (selectedImage == null) { return; } int i = bl.IndexOf(b); if (i == 1) { bl.RemoveAt(1); HB.setPhoto(null); } if (i == 2) { bl.RemoveAt(2); VB.setPhoto(null); } }
public void Test(List <WriteableBitmap> b) { if (b.Count == 0 || b == null) { return; } bl = b; try { HB.setPhoto(b[1]); VB.setPhoto(b[2]); xt = new XMarkChart(); decimal d = xt.getBrightChanges(b[0]);//原始 textBoxBrightChanges.Text = d.ToString(); textBoxBB.Text = xt.ProcessInfor["BrightChanges_BorderBright"].ToString(); textBoxCB.Text = xt.ProcessInfor["BrightChanges_CBright"].ToString(); LT.Text = xt.ProcessInfor["BrightChanges_LT"].ToString(); LB.Text = xt.ProcessInfor["BrightChanges_LB"].ToString(); RT.Text = xt.ProcessInfor["BrightChanges_RT"].ToString(); RB.Text = xt.ProcessInfor["BrightChanges_RB"].ToString(); List <int> hl, vl; DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); hl = pt.getImageGrayHLine(b[1], b[1].PixelHeight / 2); vl = pt.getImageGrayVLine(b[2], b[2].PixelWidth / 2); dg.ForeColor = Colors.Blue; dg.DrawBrightLines(hl); dg.ForeColor = Colors.Red; dg.DrawBrightLines(vl); } catch (Exception xe) //未知的异常 { if (xe is LFCException) //已经是系统约定的错误类型,直接往上抛 { SilverlightLFC.common.Environment.ShowMessage(xe.Message); } else { SilverlightLFC.common.Environment.ShowMessage("测试错误,请检查照片"); } } }
private void HB_PointerPressed(object sender, PointerRoutedEventArgs e) { LChartPhoto im = sender as LChartPhoto; selectedImage = im; HB.Active(); VB.DeActive(); photoTestToolbar1.setTarget(HB); WriteableBitmap b = im.getPhoto(); if (b != null) { DCTestLibrary.PhotoTest pt = new DCTestLibrary.PhotoTest(); Point?p = xt.PointToPix(b, im, e.GetCurrentPoint(im).Position, false); if (p == null) { return; } dg.DrawBrightLines(pt.getImageGrayHLine(b, Convert.ToInt32(p.Value.Y))); } }
public void AsyncLoadingScript(GameObject myReturnValue) { #region 读取模型 transform.position += StartPointOffSet; InstanceMesh = Instantiate(myReturnValue) as GameObject; InstanceMesh.transform.SetParent(this.transform); InstanceMesh.transform.localPosition = Vector3.zero; InstanceMesh.transform.localEulerAngles = Vector3.zero; #endregion #if UNITY_EDITOR && UNITY_ANDROID foreach (MeshRenderer meshRenderer in InstanceMesh.GetComponentsInChildren <MeshRenderer>()) { meshRenderer.sharedMaterial.shader = Shader.Find("Standard"); } #endif #region 设置网络状态 if (_InstanceNetType != InstanceNetType.GarageTank && !isBot(_InstanceNetType) && _InstanceNetType != InstanceNetType.GameNetWorkOffline) { } #endregion //模块加载 dontDestroyManager = new VehicleDontDestroyManagerModule(); referenceManager = InstanceMesh.GetComponent <VehicleComponentsReferenceManager>(); #region 加载完毕游戏资源加载脚本 TankPrefabs = gameObject; TurretTransform = InstanceMesh.transform.Find("TurretTransform").gameObject; MainHitBox = InstanceMesh.transform.Find("MainHitBox").gameObject; TankTransform = InstanceMesh.transform.Find("TankTransform").gameObject; GunTransform = TurretTransform.transform.Find("GunTransform").gameObject; FFPoint = GunTransform.transform.Find("FFPoint").gameObject; EffectStart = GunTransform.transform.Find("EffectStart").gameObject; TurretHitBox = TurretTransform.transform.Find("TurretHitBox").gameObject; GameObject TankScript = null, TankCrossHair = null, MainCamera = null; Rigidbody TankPhysic = null; TurretController mt = null; // SyncGroundVehicle _syncGroundVehicle = null; PlayerTracksController PTC = null; PlayerState PS = null; PTC = InstanceMesh.AddComponent <PlayerTracksController> (); #region 物理效果 TankPhysic = GetComponentInChildren <Rigidbody> (); TankPhysic.mass = PTCParameter.Mass; TankPhysic.drag = 0.1f; //PTCParameter.Drag; TankPhysic.angularDrag = 2.5f; //PTCParameter.AirDrag; TankPhysic.useGravity = false; BoxCollider[] collisions = PTC.GetComponentsInChildren <BoxCollider> (); foreach (Collider collision in collisions) { if (collision.isTrigger != true) { collision.material = StaticResourcesReferences.Instance.VehiclePhysicMaterial; } } #endregion if (_InstanceNetType != InstanceNetType.GarageTank) { if (isLocalPlayer(_InstanceNetType)) { TankCrossHair = Instantiate((GameObject)Resources.Load("TankCrossHair"), Vector3.zero, Quaternion.identity) as GameObject; MainCamera = Instantiate((GameObject)Resources.Load("MainCamera"), Vector3.zero, Quaternion.identity) as GameObject; TankCrossHair.transform.parent = TankPrefabs.transform; MainCamera.transform.parent = InstanceMesh.transform; MainCamera.transform.name = "MainCamera"; } TankScript = Instantiate((GameObject)Resources.Load("TankScript"), Vector3.zero, Quaternion.identity) as GameObject; TankScript.transform.name = "TankScript"; TankScript.transform.parent = TankPrefabs.transform; TankPhysic.useGravity = true; #region PlayerState 脚本设置 if (!isBot(_InstanceNetType)) { PS = InstanceMesh.AddComponent <PlayerState>(); PS.tankInitSystem = this; foreach (HitBox HB in GetComponentsInChildren <HitBox>()) { HB.SetTarget(PS); } PS.playerStateParameter = PSParameter; PS.netType = _InstanceNetType; PS.Turret = TurretTransform; PS.TankScript = TankScript; PS.DiedDestoryObjects = new Object[] { MainHitBox, TurretHitBox }; PS.TankName = VehicleName; PS.Health = PSParameter.Health; PS.engineType = PSParameter.engineType; PS.IsMobile = isMobile; } #endregion if (isBot(_InstanceNetType)) { EnemyAiState enemyState = InstanceMesh.AddComponent <EnemyAiState>(); foreach (HitBox HB in GetComponentsInChildren <HitBox>()) { HB.SetTarget(enemyState); } enemyState.TankScript = TankScript; enemyState.Health = PSParameter.Health; enemyState.TankName = VehicleName; enemyState.MyTeam = ownerTeam; } #region TankScript 脚本设置 mt = TankScript.GetComponent <TurretController>(); if (isLocalPlayer(_InstanceNetType)) { mt.target = MainCamera.transform.Find("CameraTarget"); } mt.gun = GunTransform.transform; mt.Turret = TurretTransform.transform; mt.DownMaxDegree = MTParameter.DownMaxDegree; mt.UpMaxDegree = MTParameter.UpMaxDegree; mt.maxTurretAngle = MTParameter.maxTurretAngle; mt.gunDegreesPerSecond = MTParameter.gunDegreesPerSecond; mt.turretDegreesPerSecond = MTParameter.turretDegreesPerSecond; mt.isMobile = isMobile; #endregion #region 主摄像机设置 if (isLocalPlayer(_InstanceNetType)) { MainCamera.GetComponent <VehicleCamera>().target = referenceManager.MainCameraFollowTarget.transform; MainCamera.GetComponent <VehicleCamera>().mainCameraFollowTarget = referenceManager.MainCameraFollowTarget.transform; MainCamera.GetComponent <VehicleCamera>().mainCameraGunner = referenceManager.MachineGunFFPoint.transform; referenceManager.MachineGunFFPoint.transform.position = referenceManager.FFPoint.transform.position; MainCamera.GetComponent <VehicleCamera>().IsMobile = isMobile; if (PSParameter.vehicleType == VehicleType.SPG) { MainCamera.GetComponent <VehicleCamera>().isVehicleSPG = true; } } #endregion #region 瞄准射线 if (isLocalPlayer(_InstanceNetType)) { RayManager rayManager = TankScript.AddComponent <RayManager>(); rayManager.Init(FFPoint.transform); } #endregion #region 瞄准镜设置 if (isLocalPlayer(_InstanceNetType)) { TankCrossHair.GetComponent <CrossHair>().MainCamera = MainCamera.GetComponent <Camera>(); TankCrossHair.GetComponent <CrossHair>().tankCamera = MainCamera.GetComponent <VehicleCamera>(); TankCrossHair.GetComponent <CrossHair>().FFPoint = EffectStart.transform; } #endregion #region 坦克发射器脚本设置 TankFire tf = TankScript.GetComponent <TankFire>(); tf.tankFireParameter = TFParameter; tf.tankInitSystem = this; tf.MachineGunFFPoint = referenceManager.MachineGunFFPoint.transform; tf.FFPoint = referenceManager.FFPoint.transform; tf.FireRecoilPoint = referenceManager.FireForceFeedbackPoint.transform; tf.FireEffectPoint = referenceManager.EffectStart.transform; tf.BulletCountList = BulletCountList; tf.GunDym = GunTransform.transform.Find("GunDym").GetComponent <Animator>(); tf.MainBody = InstanceMesh.transform; tf.netType = _InstanceNetType; if (PSParameter.vehicleType == VehicleType.SPG) { tf.isAutoCaclulateGravity = true; } #endregion #region 引擎音效控制 EngineSoundModule engineSoundModule = InstanceMesh.AddComponent <EngineSoundModule>(); engineSoundModule.tankInitSystem = this; engineSoundModule.engineData = PTCParameter.vehicleEngineSoundData; engineSoundModule.Init(referenceManager.EngineSound.transform); #endregion GameObject EngineSmoke = Instantiate <GameObject>(Resources.Load <GameObject>("EngineSmoke")); EngineSmoke.transform.SetParent(referenceManager.EngineSmoke.transform); EngineSmoke.transform.localPosition = Vector3.zero; EngineSmoke.transform.localEulerAngles = Vector3.zero; //GameObject grounddust = Instantiate(Resources.Load<GameObject>("TrackEffect")); //grounddust.transform.SetParent(InstanceMesh..transform); //grounddust.transform.localPosition = Vector3.zero; //grounddust.transform.localEulerAngles = Vector3.zero; VehicleState vehicleState = InstanceMesh.AddComponent <VehicleState>(); vehicleState.engineSoundModule = engineSoundModule; vehicleState.tankTracksController = PTC; } #region 坦克控制器设置 PTC.tankInitSystem = this; PTC.rightTrackUpperWheels = GetAllChilds(TankTransform.transform.Find("RightUpperWheel")); PTC.leftTrackUpperWheels = GetAllChilds(TankTransform.transform.Find("LeftUpperWheel")); PTC.rightTrackWheels = GetAllChilds(TankTransform.transform.Find("RightWheel")); PTC.leftTrackWheels = GetAllChilds(TankTransform.transform.Find("LeftWheel")); PTC.leftTrack = referenceManager.LeftTrack; PTC.rightTrack = referenceManager.RightTrack; //PTC.leftTrackBones = CreateTrack (true, TankTransform.transform, ref PTC); //PTC.rightTrackBones = CreateTrack (false, TankTransform.transform, ref PTC); PTC.tankTransform = TankTransform.transform; PTC.maxAngularVelocity = PTCParameter.MaxAngularVelocity; PTC.MaxSpeed = PTCParameter.MaxSpeed; PTC.MinSpeed = PTCParameter.MinSpeed; PTC.COM = PTCParameter.CenterOfGravity; PTC.PushSpeed = PTCParameter.PushSpeed; PTC.BackSpeed = PTCParameter.BackSpeed; PTC.sidewaysFrictionAsymptoteFactor = PTCParameter.SideWaysFrictionAsymptoteFactor; PTC.sidewaysFrictionExtremumFactor = PTCParameter.SideWaysFrictionExtremumFactor; PTC.wheelCollider = PTCParameter.TankWheelCollider; PTC.wheelsAndBonesAxisSettings = new PlayerTracksController.WheelsAxisSettings(); PTC.wheelsAndBonesAxisSettings.bonesPositionAxis = TankTracksController.Axis.Z; PTC.wheelsAndBonesAxisSettings.wheelsPositionAxis = TankTracksController.Axis.Z; PTC.wheelsAndBonesAxisSettings.wheelsRotationAxis = TankTracksController.Axis.X; PTC.accelerationConfiguration = PTCParameter.VAconfigSetting; PTC.rotationOnAccelerationConfiguration = PTCParameter.HAconfigSetting; PTC.rotationOnStayConfiguration = PTCParameter.HAconfigSetting; #endregion #region 车库状态 if (_InstanceNetType == InstanceNetType.GarageTank) { PTC.enabled = false; TankPhysic.isKinematic = true; if (ShowHitBoxInspecter) { foreach (HitBox HB in GetComponentsInChildren <HitBox>()) { HB.StartCoroutine(HB.ShowArmorInfo()); } } foreach (MeshCollider MC in transform.root.GetComponentsInChildren <MeshCollider>()) { if (MC.GetComponent <HitBox> () == null) { MC.enabled = false; } } //EventManager.StartListening ("TankInitSystem.InitTankShader", GarageInitTankShaderPreView); return; } #endregion if (ExtraTF && !isBot(_InstanceNetType)) { for (int i = 0; i < multiTurrets.Length; i++) { GameObject TankScriptExtra = Instantiate((GameObject)Resources.Load("TankScript"), Vector3.zero, Quaternion.identity) as GameObject; TankScriptExtra.transform.name = "TankScriptExtra"; TankScriptExtra.transform.parent = TankPrefabs.transform; TurretController mouseTurretExtra = TankScriptExtra.GetComponent <TurretController> (); if (isLocalPlayer(_InstanceNetType)) { mouseTurretExtra.target = MainCamera.transform.Find("CameraTarget"); } Transform ExtraTurret = InstanceMesh.transform.Find(multiTurrets [i].ObjectPath); Transform ExtraGun = ExtraTurret.transform.Find("GunTransform"); mouseTurretExtra.gun = ExtraGun; mouseTurretExtra.Turret = ExtraTurret; mouseTurretExtra.DownMaxDegree = multiTurrets [i].MTParameter.DownMaxDegree; mouseTurretExtra.UpMaxDegree = multiTurrets [i].MTParameter.UpMaxDegree; mouseTurretExtra.maxTurretAngle = multiTurrets [i].MTParameter.maxTurretAngle; mouseTurretExtra.gunDegreesPerSecond = multiTurrets [i].MTParameter.gunDegreesPerSecond; mouseTurretExtra.turretDegreesPerSecond = multiTurrets [i].MTParameter.turretDegreesPerSecond; mouseTurretExtra.isMobile = isMobile; TankFire tfExtra = TankScriptExtra.GetComponent <TankFire> (); Transform ExtraFFPoint = ExtraGun.Find("FFPoint"); Transform ExtraFireEffect = ExtraGun.Find("FireEffect"); tfExtra.FFPoint = ExtraFFPoint; tfExtra.FireRecoilPoint = FFPoint.transform; tfExtra.FireEffectPoint = ExtraFireEffect; tfExtra.MainBody = InstanceMesh.transform; //tfExtra.FireRecoil = multiTurrets [i].tankFireParameter.FireRecoil; //tfExtra.ReloadTime = multiTurrets [i].tankFireParameter.ReloadTime; //tfExtra.AmmoCount = multiTurrets [i].tankFireParameter.AmmoCount; //tfExtra.HasMahineGun = multiTurrets [i].tankFireParameter.HasMachineGun; //tfExtra.muzzleFire = multiTurrets [i].tankFireParameter.MuzzleFire; //tfExtra.advanceFireClass = multiTurrets [i].tankFireParameter.advanceFireClass; //tfExtra.fireState = multiTurrets [i].tankFireParameter.FireState; //tfExtra.netType = InstanceNetType; } } #endregion InstanceMesh.AddComponent <Identity> (); if (isLocalPlayer(_InstanceNetType)) { GameEvent.InitPlayer(InstanceMesh.GetComponent <Identity>()); } #region 初始化玩家网络 if (!GameDataManager.OfflineMode) { if (_InstanceNetType == InstanceNetType.GameNetworkOthers) { PTC.enableUserInput = false; //PTC.AdvanceTrackSystem = false; PTC.OnlyReceiveControlActions = true; } if (_InstanceNetType == InstanceNetType.GameNetworkMaster) { PTC.enableUserInput = false; } if (_InstanceNetType == InstanceNetType.GameNetworkClient) { PTC.enableUserInput = true; PTC.OnlyReceiveControlActions = true; } if (isBot(_InstanceNetType)) { PTC.enableUserInput = false; if (_InstanceNetType == InstanceNetType.GameNetWorkBotClient) { PTC.OnlyReceiveControlActions = true; } else { PTC.OnlyReceiveControlActions = false; } } //_syncGroundVehicle = InstanceMesh.AddComponent<SyncGroundVehicle> (); //_syncGroundVehicle.tankInitSystem = this; //_syncGroundVehicle.Init (PTC, mt, _InstanceNetType); } #region 设置离线标识 if (GameDataManager.OfflineMode) { if (_InstanceNetType == InstanceNetType.GameNetWorkOffline) { Identity MyIdentity = InstanceMesh.GetComponent <Identity> (); MyIdentity.Init(ownerTeam, InstanceNetType.GameNetWorkOffline); MyIdentity.SetOwnerInfo("LocalPlayer", VehicleName, 0); } } #endregion #endregion if (!isBot(_InstanceNetType)) { StartCoroutine(PS.Init()); } if (GameEventManager.onNewVehicleSpawned != null) { GameEventManager.onNewVehicleSpawned(this); } if (onVehicleLoaded != null) { onVehicleLoaded(); } }
new public void Update() { allTime += Time.deltaTime; //base.Update(); if (hp <= 0) { //Удалить все эффекты fightController.enemies.Remove(this); DestroyHalo(halo); Death(); } HB.GetComponentInChildren <TextMeshProUGUI>().text = $"{Mathf.Ceil(hp)}/{Mathf.Ceil(maxhp)}"; if (time > 0) { time -= Time.deltaTime; } else { time = cooldown; float r = Random.Range(0, 3); switch (r) { case 0: foreach (var x in fightController.friends) { var st = Instantiate(weak, x.transform); st.Name = "Ослабление"; st.lifetime = 8; st.percent = Information.GetEffectStates("Ослабление", 0, -50)[0]; st.power = -20; st.character = x; x.TakeDamage(damage); } break; case 1: SetTargetRandom(); StartCoroutine(AtakeAnim()); AttackTimeout = AttackCooldown; AttackTarget.TakeDamage(Random.Range(DamageMin, DamageMax) * (1 + power / 100)); StartCoroutine(AttackTarget.TakingDamageAnim()); break; case 2: foreach (var x in fightController.friends) { var st = Instantiate(poison, x.transform); st.Name = "Отравление"; st.lifetime = 8; st.period = 1; st.damage = 1; st.character = x; //x.TakeDamage(damage); } break; } } if (razmes && allTime > 12) { SetTargetRandom(); StartCoroutine(AtakeAnim()); StartCoroutine(AttackTarget.TakingDamageAnim()); } }
// Update is called once per frame void Update() { // Raycast variables Ray[] rays; float[] maxDistances; HB.ScreenPointToRays(Camera.main, out rays, out maxDistances); RaycastHit hit; if (HB.Raycast(rays, out hit, maxDistances)) { if (hit.collider.tag == "Interactable") { if (!cursorTextureActive) { Cursor.SetCursor(interactIcon, hotSpot, cursorMode); cursorTextureActive = true; } if (Input.GetMouseButtonDown(0)) { hit.transform.GetComponent <EnvironmentInteractScript>().InteractionEvent(); } } else if (hit.collider.tag == "RightSign") { if (!cursorTextureActive) { Cursor.SetCursor(rightArrow, hotSpot, cursorMode); cursorTextureActive = true; } if (Input.GetMouseButtonDown(0)) { playerController.ChooseDirection("Right"); } } else if (hit.collider.tag == "LeftSign") { if (!cursorTextureActive) { Cursor.SetCursor(leftArrow, hotSpot, cursorMode); cursorTextureActive = true; } if (Input.GetMouseButtonDown(0)) { playerController.ChooseDirection("Left"); } } else if (cursorTextureActive) { Cursor.SetCursor(null, Vector3.zero, cursorMode); cursorTextureActive = false; } } else if (cursorTextureActive) { Cursor.SetCursor(null, Vector3.zero, cursorMode); cursorTextureActive = false; } }