예제 #1
0
 public DoorCastLogic(MapObjectContext mapObjectContext, PlayerContext playerContext, IUserCmdGenerator cmdGenerator, float maxDistance) : base(playerContext, maxDistance)
 {
     _doorContext          = mapObjectContext;
     _playerContext        = playerContext;
     _userCmdGenerator     = cmdGenerator;
     _triggerObjectManager = SingletonManager.Get <TriggerObjectManager>();
 }
예제 #2
0
 public PlayerCastLogic(
     PlayerContext playerContext,
     IUserCmdGenerator cmdGenerator,
     float maxDistance) : base(playerContext, maxDistance)
 {
     _playerContext    = playerContext;
     _userCmdGenerator = cmdGenerator;
 }
예제 #3
0
 public ClientContextInitilizer(IUserCmdGenerator userCmdGenerator,
                                ICoRoutineManager coRoutineManager,
                                IUnityAssetManager assetManager,
                                string loginToken)
 {
     _userCmdGenerator = userCmdGenerator;
     _coRoutineManager = coRoutineManager;
     _loginToken       = loginToken;
     _assetManager     = assetManager;
 }
예제 #4
0
 public VehicleCastLogic(
     VehicleContext vehicleContext,
     PlayerContext playerContext,
     IUserCmdGenerator cmdGenerator,
     float maxDistance) : base(playerContext, maxDistance)
 {
     _vehicleContext   = vehicleContext;
     _playerContext    = playerContext;
     _userCmdGenerator = cmdGenerator;
 }
예제 #5
0
 public FreeObjectCastLogic(
     FreeMoveContext freeMoveContext,
     PlayerContext playerContext,
     IUserCmdGenerator cmdGenerator,
     float distance) : base(playerContext, distance)
 {
     _userCmdGenerator = cmdGenerator;
     _freeMoveContext  = freeMoveContext;
     _playerContext    = playerContext;
 }
예제 #6
0
 public MapObjectCastLogic(
     PlayerContext playerContext,
     MapObjectContext mapObjectContext,
     ClientSessionObjectsComponent sessionObjectsComponent,
     IUserCmdGenerator cmdGenerator,
     float maxDistance) : base(playerContext, maxDistance)
 {
     _mapObjectContext        = mapObjectContext;
     _sessionObjectsComponent = sessionObjectsComponent;
     _cmdGenerator            = cmdGenerator;
 }
예제 #7
0
 public PlayerRobotAdapter(Entitas.IContexts contexts, PlayerEntity entity, NavMeshAgent navMeshAgent,
                           IRobotUserCmdProvider robotUserCmdProvider, IRobotSpeedInfo robotSpeedInfo,
                           IUserCmdGenerator userCmdGenerator, IRobotConfig robotConfig)
 {
     NavMeshAgent         = navMeshAgent;
     Entity               = entity;
     RobotUserCmdProvider = robotUserCmdProvider;
     RobotSpeedInfo       = robotSpeedInfo;
     UserCmdGenerator     = userCmdGenerator;
     RobotConfig          = robotConfig;
     GameContexts         = contexts;
 }
예제 #8
0
        public UserCmdCollectSystem(Contexts contexts)
        {
            _sessionObjects = contexts.session.clientSessionObjects;

            _timeManager         = _sessionObjects.TimeManager;
            _generator           = _sessionObjects.UserCmdGenerator;
            _vehicleCmdGenerator = new UnityVehicleCmdGenerator(contexts.userInput.userInputManager.Instance);
            _playerContext       = contexts.player;

            _simulationTimer = _sessionObjects.SimulationTimer;

            _contexts = contexts;
        }
예제 #9
0
 public ClientSurvivalPickupDropHandler(Contexts contexts, int modeId) : base(contexts, modeId)
 {
     _userCmdGenerator = contexts.session.clientSessionObjects.UserCmdGenerator;
     _contexts         = contexts;
 }
예제 #10
0
        public static void CreateRobotPlayerEntity(Contexts contexts, PlayerEntity player, IRobotConfig robotConfig,
                                                   IRobotUserCmdProvider robotUserCmdProvider, IUserCmdGenerator userCmdGenerator)
        {
            var navMeshAgent = player.RootGo().AddComponent <NavMeshAgent>();
            var behaviorTree = player.RootGo().AddComponent <BehaviorTree>();

            navMeshAgent.autoTraverseOffMeshLink = false;
            navMeshAgent.updatePosition          = false;
            navMeshAgent.updateRotation          = false;
            navMeshAgent.updateUpAxis            = false;
            navMeshAgent.stoppingDistance        = 0.1f;
            behaviorTree.enabled = false;

            var robot = new PlayerRobotAdapter(contexts, player, navMeshAgent, robotUserCmdProvider,
                                               new DummyRobotSpeedInfo(),
                                               userCmdGenerator, new DummyRobotConfig());

            player.AddRobot(robot);
        }
예제 #11
0
 public ClientPlayerPickAndDropSystem(Contexts contexts)
 {
     _contexts         = contexts;
     _userCmdGenerator = contexts.session.clientSessionObjects.UserCmdGenerator;
 }
예제 #12
0
 public PlayerEquipPickAndDropSystem(IUserCmdGenerator userCmdGenerator)
 {
     _userCmdGenerator = userCmdGenerator;
 }
예제 #13
0
 public PlayerStateTipLogic(PlayerContext playerContext, IUserCmdGenerator cmdGenerator)
 {
     _playerContext    = playerContext;
     _parachuteState   = ParachuteState.Start;
     _userCmdGenerator = cmdGenerator;
 }
예제 #14
0
 public BuffTipLogic(PlayerContext playerContext, UiContext uiContext, IUserCmdGenerator cmdGenerator)
 {
     _playerContext    = playerContext;
     _userCmdGenerator = cmdGenerator;
     _uiContext        = uiContext;
 }