public QuestSystem(ILogger <QuestSystem> logger, IRhisisDatabase database, IGameResources gameResources, IPlayerDataSystem playerDataSystem, IInventorySystem inventorySystem, IExperienceSystem experienceSystem, IJobSystem jobSystem, IQuestPacketFactory questPacketFactory, INpcDialogPacketFactory npcDialogPacketFactory, ITextPacketFactory textPacketFactory) { _logger = logger; _database = database; _gameResources = gameResources; _playerDataSystem = playerDataSystem; _inventorySystem = inventorySystem; _experienceSystem = experienceSystem; _jobSystem = jobSystem; _questPacketFactory = questPacketFactory; _npcDialogPacketFactory = npcDialogPacketFactory; _textPacketFactory = textPacketFactory; }
// Update is called once per frame void Update() { if (Input.GetMouseButtonDown(0)) { _isSelected = true; _startDrag = Input.mousePosition; } if (Input.GetMouseButtonUp(0) && _isSelected) { _isSelected = false; _jobs = null; foreach (var entity in EntityRegistry.Registered) { var endDrag = Input.mousePosition; if (!JobControllerUtil.IsWithinSelectionBounds(_startDrag, endDrag, entity)) { continue; } _jobs = entity.GetComponent <IJobSystem>(); if (_jobs != null) { break; } } } if (Input.GetKeyDown(KeyCode.A)) { _mode = JobControllerMode.AttackMove; } else if (Input.GetKeyDown(KeyCode.S)) { _mode = JobControllerMode.Move; } if (_jobs != null && Input.GetMouseButtonDown(1)) { ApplyJob(); } }
private void Awake() { _abilitiable = GetComponent <IAbilitiable>(); _jobSystem = GetComponent <IJobSystem>(); }