public static bool IsVehicleEnterable(this PlayerEntity playerEntity, VehicleEntity vehicle) { if (vehicle.vehicleBrokenFlag.IsBodyBroken()) { Logger.Debug("body broken"); return(false); } if (vehicle.IsCar()) { if (vehicle.IsInWater()) { Logger.Debug("car in water"); return(false); } if (!playerEntity.playerMove.IsGround) { Logger.Debug("do not on ground"); return(false); } } else if (vehicle.IsShip()) { if (!SingletonManager.Get <MapConfigManager>().InWater(playerEntity.position.Value) && !playerEntity.playerMove.IsGround) { Logger.Debug("do not on ground and do not in water and vehicle is ship"); return(false); } } return(true); }
public void SetEnableIk() { var cmd = GetAvailableCommand(); cmd.SetPlayerIk(SetEnableIkImpl); Logger.Debug("SetEnableIk"); }
protected override void Run() { Thread.CurrentThread.Name = Name; Thread.CurrentThread.Priority = ThreadPriority.AboveNormal; while (Running) { try { Job task = _queue.Dequeue(1); if (task == null) { continue; } _logger.Debug("start"); try { SingletonManager.Get <DurationHelp>().ProfileStart(_profile); _action(task); SingletonManager.Get <DurationHelp>().ProfileStart(_profile2); Interlocked.Decrement(ref _count); } finally { SingletonManager.Get <DurationHelp>().ProfileEnd(_profile); SingletonManager.Get <DurationHelp>().ProfileEnd(_profile2); } _logger.Debug("end"); } catch (Exception e) { _logger.ErrorFormat("Run Error:{0}", e); } } }
private void DoCastAction() { if (Time.time - _lastCastTime < SingletonManager.Get <RaycastActionConfigManager>().Interval) { if (Logger.IsDebugEnabled) { Logger.Debug("action in cd "); } return; } _lastCastTime = Time.time; if (null == _castData) { if (Logger.IsDebugEnabled) { Logger.Debug("caset Data is null"); } return; } if (null != _currentCastLogic) { _currentCastLogic.Action(); } else { if (Logger.IsDebugEnabled) { Logger.Debug("current cast logic is null"); } } _castData = null; _currentCastLogic = null; }
public void CloseSocket(Socket socket) { if (socket == null || !socket.Connected) { return; } try { if (this.RealTimeSocket != null) { this.RealTimeSocket.Shutdown(SocketShutdown.Both); } } catch (Exception ex) { Logger.Debug("Close1:" + ex.Message); } try { socket.Close(); } catch (Exception ex2) { Logger.Debug("Close2:" + ex2.Message); } }
protected override void Run() { Thread.CurrentThread.Name = Name; Thread.CurrentThread.Priority = ThreadPriority.AboveNormal; while (Running) { try { Job task = _queue.Dequeue(1); if (task == null) { continue; } try { _profile.BeginProfileOnlyEnableProfile(); _action(task); // _profile2.BeginProfileOnlyEnableProfile(); } finally { _queue.DelRef(); _profile.EndProfileOnlyEnableProfile(); // _profile2.EndProfileOnlyEnableProfile(); } _logger.Debug("end"); } catch (Exception e) { _logger.ErrorFormat("Run Error:{0}", e); } } }
private void RideOnVehicle(PlayerEntity playerEntity, VehicleEntity vehicle, int preferedSeat) { if (!playerEntity.IsVehicleEnterable(vehicle)) { return; } if (!vehicle.IsRidable()) { vehicle.ResetPose(!SharedConfig.IsOffline && !SharedConfig.IsServer); return; } if (!vehicle.AddPassager(playerEntity, ref preferedSeat)) { Logger.Debug("add passager failed"); return; } var rigidBody = vehicle.gameObject.UnityObject.AsGameObject.GetComponent <Rigidbody>(); playerEntity.controlledVehicle.RideOn(preferedSeat, vehicle.entityKey.Value, rigidBody, _currentTime.CurrentTime); playerEntity.AudioController().StopSwimAudio(); CheckAndAddOwnerId(vehicle, playerEntity); SetPositionInterpolateMode(playerEntity); playerEntity.SetCharacterStateWithVehicle(_contexts, _vehicleContext); }
private HashSet <EPlayerInput> GetPlayerInputs(StateTransitionConfigItem item) { var set = new HashSet <EPlayerInput>(); var itemType = item.GetType(); for (var e = EPlayerInput.None + 1; e < EPlayerInput.Length; e++) { try { Transition field = (Transition)Enum.Parse(typeof(Transition), e.ToString()); /*var field = itemType.GetField(e.ToString());*/ if (null != field) { /*var val = field.GetValue(item);*/ var val = item.vsTransition[(int)field]; if ((bool)val) { set.Add(e); } } } catch (Exception excep) { Logger.Debug("error : " + excep.ToString() + " e : " + e.ToString()); } } return(set); }
public IActionResult Index() { LoggerAdapter.Debug("Logs Debug"); LoggerAdapter.Information("Logs Information"); LoggerAdapter.Warning("Logs Warning"); LoggerAdapter.Error("Logs Error"); LoggerAdapter.Fatal("Logs Fatal"); return(View()); }
// comes from DynamicScenesController.cs public void SceneLoaded(Scene scene, LoadSceneMode mode) { foreach (var go in scene.GetRootGameObjects()) { var terrain = go.GetComponent <Terrain>(); if (terrain != null) { Type t = Type.GetType("ArtPlugins.TerrainProxy, Assembly-CSharp"); if (t != null) { terrain.drawTreesAndFoliage = true; terrain.heightmapPixelError = 20; terrain.collectDetailPatches = true; terrain.detailObjectDistance = 120; terrain.reflectionProbeUsage = UnityEngine.Rendering.ReflectionProbeUsage.Off; terrain.gameObject.AddComponent(t); _logger.Debug("ArtPlugins.TerrainProxy, Assembly-CSharp Founded"); } else { _logger.Error("ArtPlugins.TerrainProxy, Assembly-CSharp Not Founded"); } terrain.treeDistance = 800; } var mapConfig = SingletonManager.Get <MapConfigManager>().SceneParameters; foreach (var v in go.GetComponentsInChildren <Camera>()) { if (v != Camera.main) { continue; //非主相机不需要GQS_Bind_Camera } Type t = Type.GetType("ArtPlugins.GQS_Bind_Camera, Assembly-CSharp"); if (t != null) { v.gameObject.AddComponent(t); } else { _logger.Error("ArtPlugins.GQS_Bind_Camera is null ??? !!!"); } v.useOcclusionCulling = mapConfig.OcEnable; // if (v.GetComponent<AudioListener>() == null) // { // v.gameObject.AddComponent<AudioListener>(); // } } InitCameraPostProcessEffect(); } }
public override void DoAction(IEventArgs args) { FreeRuleEventArgs fr = (FreeRuleEventArgs)args; IGameUnit unit = GetPlayer(args); if (unit != null) { PlayerEntity p = ((FreeData)unit).Player; int itemId = FreeUtil.ReplaceInt(weaponId, args); int index = FreeUtil.ReplaceInt(weaponKey, args); EWeaponSlotType st = FreeWeaponUtil.GetSlotType(index); Debug.LogFormat("add weapon: " + itemId + "," + index); Logger.Debug("add weapon to team " + p.playerInfo.Camp + " player " + p.playerInfo.PlayerName); SimpleProto message = new SimpleProto(); if (index == 0) { p.WeaponController().PickUpWeapon(WeaponUtil.CreateScan(itemId)); //p.bag.Bag.SetWeaponBullet(30); //p.bag.Bag.SetReservedCount(100); } else { p.WeaponController().ReplaceWeaponToSlot(st, WeaponUtil.CreateScan(itemId)); if (p.stateInterface.State.CanDraw() && p.WeaponController().HeldSlotType == EWeaponSlotType.None) { p.WeaponController().TryArmWeapon(st); } //SwitchWeaponAction.WeaponToHand(p, st); } message.Ins.Add(itemId); if (index > 0) { message.Ins.Add((int)st); } else { message.Ins.Add(-1); } message.Ks.Add(2); message.Key = FreeMessageConstant.ChangeAvatar; FreeMessageSender.SendMessage(p, message); //p.network.NetworkChannel.SendReliable((int)EServer2ClientMessage.FreeData, message); } }
public virtual void AfterFireCmd(IPlayerWeaponState playerWeapon, IWeaponCmd cmd, int bulletCount) { if (bulletCount > 0) { var needActionDeal = CheckNeedActionDeal(playerWeapon.CurrentWeapon, ActionDealEnum.Fire); OnAfterFire(playerWeapon, needActionDeal); } else { Logger.Debug("bullet count is zero !!"); } }
private bool OutOfRange(PlayerEntity player, Vector3 hitPoint) { var xzHitPoint = new Vector3(hitPoint.x, player.position.Value.y, hitPoint.z); var dis = Vector3.Distance(xzHitPoint, player.position.Value); var outOfrange = dis > _maxDistance; if (outOfrange) { Logger.Debug("OutOfRange"); } return(outOfrange); }
private bool HasObstacle(Vector3 colPosition, Vector3 bombPosition, Func <Transform, bool> exclude = null) { RaycastHit hitInfo; if (null == exclude) { Debug.DrawLine(bombPosition, colPosition, Color.red, 10f); if (Physics.Linecast(bombPosition, colPosition, out hitInfo, UnityLayerManager.GetLayerMask(EUnityLayerName.Default))) { if (Logger.IsDebugEnabled) { Logger.DebugFormat("has obstacle {0}", hitInfo.transform.name); } return(true); } if (Logger.IsDebugEnabled) { Logger.Debug("no obstacle"); } return(false); } var dir = colPosition - bombPosition; var obstacles = Physics.RaycastAll(bombPosition, dir, dir.magnitude, UnityLayerManager.GetLayerMask(EUnityLayerName.Default)); foreach (var obstacle in obstacles) { if (!exclude(obstacle.transform)) { return(true); } } if (Logger.IsDebugEnabled) { Logger.Debug("has exculde fun and no obstacle "); } return(false); }
public bool IsApproximatelyEqual(object right) { bool ret = true; var rightComp = right as FpAnimStatusComponent; if (rightComp != null) { // for (int i = 0; i < AnimatorLayers.Count; i++) // { // var equal = AnimatorLayers[i].IsSimilar(rightComp.AnimatorLayers[i]); // if (!equal) // { // _logger.Debug(AnimatorLayers[i].ToString()); // _logger.Debug(rightComp.AnimatorLayers[i].ToString()); // } // // ret = ret && equal; // } for (int i = 0; i < AnimatorParameters.Count; i++) { var equal = AnimatorParameters[i].IsSimilar(rightComp.AnimatorParameters[i]); if (!equal) { _logger.Debug(AnimatorParameters[i].ToString()); _logger.Debug(rightComp.AnimatorParameters[i].ToString()); } ret = ret && equal; } ret = ret && CompareUtility.IsApproximatelyEqual(BaseClientTime, rightComp.BaseClientTime); } return(ret); }
// comes from DynamicScenesController.cs public void SceneLoaded(Scene scene, LoadSceneMode mode) { foreach (var go in scene.GetRootGameObjects()) { var terrain = go.GetComponent <Terrain>(); if (terrain != null) { Type t = Type.GetType("ArtPlugins.TerrainProxy, Assembly-CSharp"); if (t != null) { terrain.drawTreesAndFoliage = true; terrain.heightmapPixelError = 20; terrain.collectDetailPatches = true; terrain.detailObjectDistance = 120; terrain.reflectionProbeUsage = UnityEngine.Rendering.ReflectionProbeUsage.Off; terrain.gameObject.AddComponent(t); _logger.Debug("ArtPlugins.TerrainProxy, Assembly-CSharp Founded"); } else { _logger.Error("ArtPlugins.TerrainProxy, Assembly-CSharp Not Founded"); } terrain.treeDistance = 800; } foreach (var v in go.GetComponentsInChildren <Camera>()) { Type t = Type.GetType("ArtPlugins.GQS_Bind_Camera, Assembly-CSharp"); if (t != null) { v.gameObject.AddComponent(t); } else { _logger.Error("ArtPlugins.GQS_Bind_Camera is null ??? !!!"); } v.useOcclusionCulling = false; // if (v.GetComponent<AudioListener>() == null) // { // v.gameObject.AddComponent<AudioListener>(); // } } } }
public override bool IsActive(ICameraMotorInput input, ICameraMotorState state) { if (input.IsDead) { return(false); } if (!input.CanWeaponGunSight) { return(false); } if (state.IsFree()) { return(false); } if (!state.GetMainConfig().CanSwitchView) { return(false); } if (state.ViewMode == ECameraViewMode.GunSight && (input.FilteredCameraFocus || input.ForceChangeGunSight || input.ForceInterruptGunSight)) { if (input.ForceInterruptGunSight) { if (Logger.IsDebugEnabled) { Logger.Debug("ForceInterruptGunSight"); } } return(false); } //if (state.ViewMode.Equals(ECameraViewMode.ThirdPerson) && input.IsCameraFocus) if (state.ViewMode == ECameraViewMode.ThirdPerson && !input.ForceInterruptGunSight && (input.FilteredCameraFocus || input.ForceChangeGunSight)) { return(true); } //if (state.ViewMode.Equals(ECameraViewMode.FirstPerson) && input.IsCameraFocus) if (state.ViewMode == ECameraViewMode.FirstPerson && !input.ForceInterruptGunSight && (input.FilteredCameraFocus || input.ForceChangeGunSight)) { return(true); } return(state.ViewMode == ECameraViewMode.GunSight); }
public override bool IsActive(ICameraMotorInput input, ICameraMotorState state) { if (input.IsDead) { return(false); } if (!input.CanWeaponGunSight) { return(false); } if (state.IsFree()) { return(false); } if (!state.GetMainConfig().CanSwitchView) { return(false); } if (state.ViewMode == ECameraViewMode.GunSight && (input.FilteredCameraFocus || input.InterruptCameraFocus)) { // DebugUtil.MyLog(input.FilteredCameraFocus +"_"+ input.InterruptCameraFocus); if (input.InterruptCameraFocus) { if (Logger.IsDebugEnabled) { Logger.Debug("ForceInterruptGunSight"); } } return(false); } if (state.ViewMode == ECameraViewMode.ThirdPerson && !input.InterruptCameraFocus && (input.FilteredCameraFocus)) { // DebugUtil.MyLog("Change cmr to gunsight"); return(true); } if (state.ViewMode == ECameraViewMode.FirstPerson && !input.InterruptCameraFocus && (input.FilteredCameraFocus)) { return(true); } return(state.ViewMode == ECameraViewMode.GunSight); }
public void RecordToLog(int seq) { if (!IsRecordOn) { return; } sb.Length = 0; sb.Append("{\"seq\":").Append(seq).Append(",").Append("\"entity\":["); var ecs = GetEntityCount(); for (int i = 0; i < ecs.Length; i++) { sb.Append(IntToStringCache(ecs[i])); if (i < ecs.Length - 1) { sb.Append(","); } else { sb.Append("],"); } } for (int i = 0; i < _maxId; i++) { if (_infos[i].Times > 0 && _infos[i].Interval > 0) { sb.Append("\"").Append(IntToStringCache(i)).Append("\":[").Append(IntToStringCache(_infos[i].Times)).Append(",") .Append(IntToStringCache(_infos[i].Interval)); if (_infos[i].GC > 0) { sb.Append(",").Append(IntToStringCache(_infos[i].GC)); } sb.Append("],"); _infos[i].Clean(); } } sb.Remove(sb.Length - 1, 1); sb.Append("}"); _logger.Debug(sb.ToString()); }
public int SerializeSnapshot(ISnapshot snap, Stream stream) { snap.AcquireReference(); try { _sentSnapshot.Add(snap.SnapshotSeq, snap); } catch (Exception e) { int i = 0; i++; } _snapshotQueue.Enqueue(snap.SnapshotSeq); ISnapshot baseSnap = GetBaseSnapshot(AckedSnapshotId); int ret = 0; if (baseSnap == null) { _emptySnapshot.SnapshotSeq = -1; ret = _snapSerializer.Serialize(_emptySnapshot, snap, stream); _lastAllSnapShotId = snap.SnapshotSeq; _lastAllSnapShotTime = snap.ServerTime; _isSendAll = true; _logger.Debug("send full snapshot!"); FullCount++; } else { ret = _snapSerializer.Serialize(baseSnap, snap, stream); _isSendAll = false; DiffCount++; } ClearOldSnapshot(AckedSnapshotId); ClearSnapshotWhenLimitExceeded(); return(ret); }
protected override void DoSetData(PointerData data) { _doorObjId = DoorCastData.EntityId(data.IdList); var doorObj = _triggerObjectManager.Get(ETriggerObjectType.Door, _doorObjId); if (doorObj == null) { Logger.Debug("Door trigger object is null."); return; } _enableAction = false; var player = _playerContext.flagSelfEntity; var go = doorObj; if (IsUntouchableOffGround(player, data.Position, go)) { Logger.Debug("Door is untouchable to player."); return; } //make sure player-door have a correct relative position var direction = player.RootGo().transform.position - go.transform.position; direction.y = 0; var dot = Vector3.Dot(direction, go.transform.forward); if (!dot.Equals(0)) { var mapObj = _doorContext.GetEntityWithEntityKey(new EntityKey(_doorObjId, (int)EEntityType.MapObject)); if (mapObj == null || !mapObj.hasDoorData) { if (DetectObstacle(go, dot < 0)) { SetObstacleTip(); } else { Tip = ScriptLocalization.client_actiontip.opendoor; _enableAction = true; } } else { var state = mapObj.doorData.State; if (state == (int)DoorState.Closed) { if (DetectObstacle(go, dot < 0)) { SetObstacleTip(); } else { Tip = ScriptLocalization.client_actiontip.opendoor; _enableAction = true; } } else if (state == (int)DoorState.OpenMax || state == (int)DoorState.OpenMin) { if ((state == (int)DoorState.OpenMax && DetectObstacle(go, true)) || (state == (int)DoorState.OpenMin && DetectObstacle(go, false))) { SetObstacleTip(); } else { Tip = ScriptLocalization.client_actiontip.closedoor; _enableAction = true; } } else { Logger.Debug("Door state is wrong."); } } } else { Logger.Debug("Door operation angle failed."); } }
public void ForceFinishGrenadeThrow() { Logger.Debug("InterruptGrenade : ForceEnd"); SetNewCommandFromFunctionCall(FsmInput.ForceFinishGrenade); }
private void SceneLoaded(Scene scene, LoadSceneMode modee) { var match = _scenePositionRegex.Match(scene.name); if (match.Success) { int index1 = Convert.ToInt32(match.Groups[1].Value); int index2 = Convert.ToInt32(match.Groups[2].Value); _sceneLoadMap[index1, index2].State = SceneState.Loaded; _sceneLoadMap[index1, index2].Scene = scene; _sceneLoadMap[index1, index2].Active = true; foreach (var gameObject in _sceneLoadMap[index1, index2].Scene.GetRootGameObjects()) { var terrain = gameObject.GetComponent <Terrain>(); if (terrain != null) { Type t = Type.GetType("ArtPlugins.TerrainProxy, Assembly-CSharp"); if (t != null) { terrain.gameObject.AddComponent(t); Logger.Debug("ArtPlugins.TerrainProxy, Assembly-CSharp Founded"); } else { Logger.Debug("ArtPlugins.TerrainProxy, Assembly-CSharp Not Founded"); } } } if (onSceneLoaded != null) { Logger.DebugFormat("onSceneLoaded Terrain {0} {1}", index1, index2); onSceneLoaded(index1, index2, _sceneLoadMap[index1, index2].Scene); } _loadingScene--; if (SceneLoadedEvent != null) { var center = _basePosition + new Vector3(_gridSize * (index1 + 0.5f), 0, _gridSize * (index2 + 0.5f)); // 预设:场景高度在0~1000m之间 float heightScope = 1000; center.y = heightScope * 0.5f; SceneLoadedEvent(scene, center, _gridSize > heightScope ? _gridSize : heightScope); } } if (_additiveScenes != null && _additiveScenes.Contains(scene.name)) { SceneManager.SetActiveScene(scene); Logger.InfoFormat("SET ACTIVE SCENE: {0}", scene.name); foreach (var go in scene.GetRootGameObjects()) { var comp = go.GetComponentInChildren <PositionRelatedEffect>(); if (comp != null) { _effectUpdater = new PositionRelatedEffectUpdater(comp); } foreach (var v in go.GetComponentsInChildren <Camera>()) { // 禁用相机,保证角色动画不更新 if (SharedConfig.IsServer) { v.enabled = false; } else { Type t = Type.GetType("ArtPlugins.GQS_Bind_Camera, Assembly-CSharp"); if (t != null) { v.gameObject.AddComponent(t); } else { Logger.Error("ArtPlugins.GQS_Bind_Camera is null ??? !!!"); } } v.useOcclusionCulling = SharedConfig.EnableOC; } } _loadingScene--; } foreach (var gameObject in scene.GetRootGameObjects()) { var terrain = gameObject.GetComponent <Terrain>(); if (terrain != null) { terrain.treeDistance = 800; } } Logger.InfoFormat("Scene loaded: {0}, remain loading scene: {1}", scene.name, _loadingScene); if (_loadingScene == 0 && AllSceneLoaded != null) { AllSceneLoaded(); } }