void ShowEnemyDefList() { scroll[0] = EditorGUILayout.BeginScrollView(scroll[0], GUILayout.MinWidth(120)); { if (EnemyDefList == null) { return; } for (int i = 0; i < EnemyDefList.Count; i++) { string enemyName = EnemyDefList[i].CommonProperty.Name; if (enemyName == null || enemyName.Equals("")) { enemyName = "无名敌人"; } if (GUILayout.Button(enemyName, i == ActiveIndex ? RPGEditorGUI.ListItemSelectedStyle : RPGEditorGUI.ListItemBackLightStyle, GUILayout.MaxWidth(150))) { ActiveIndex = i; ActiveEnemyDef = EnemyDefList[i]; } } EditorGUILayout.Space(); } EditorGUILayout.EndScrollView(); }
//---readers void FightCteated_Reader(ReceivedMsg receivedMsg, FightCteatedMessage msg) { FightController fightController = new FightController(_client, msg.KnifeIndex); EnemyDef enemyDef = new EnemyDef(msg.EnemyUserName, msg.EnemyKnifeName, msg.EnemyKnifeMode); FigthCreated?.Invoke(this, fightController, enemyDef); }
private static GameObject OP_OnCreate(EnemyDef def) { var obj = Object.Instantiate(def.Prefab); obj.name = def.Name; return(obj); }
private static ObjectPool <GameObject> GetPool(EnemyDef def) { if (!enemyPoolDict.ContainsKey(def.Name)) { enemyPoolDict.Add(def.Name, new ObjectPool <GameObject>(() => OP_OnCreate(def), OP_OnGet, OP_OnReturn, 10)); } return(enemyPoolDict[def.Name]); }
void OnFocus() { if (EnemyDefList.Count > 0) { ActiveIndex = 0; ActiveEnemyDef = EnemyDefList[0]; } }
private RPGEnemy(EnemyDef def) { if (def.PlayerDef == null) { Debug.LogError("EnemyDef_" + def.CommonProperty.ID + " is null"); } SetDataFromDef(def.PlayerDef); SetAI(def.AI); SetCamp(EnumCharacterCamp.Enemy); }
public EnemyController(EnemyDef def, EnemyView view, Transform target) { _def = def; _view = view; _view.controller = this; _agent = view.agent; _target = target; _dispatcher = Singleton.instance.notificationDispatcher; string[] maskList = { "CombatPlayer", "BasicBlock", "Parent" }; _playerLayer = LayerMask.GetMask(maskList); }
public static RPGEnemy Create(int id, CharacterAttribute customAttribute = null) { EnemyDef def = ResourceManager.GetEnemyDef(id); RPGEnemy r = new RPGEnemy(def); if (customAttribute != null) { r.logic.SetAttribute(customAttribute); } return(r); }
public EnemySystem( GameplayResources gameplayResources, GameConfig gameConfig, PlayerCombatSystem playerCombatSystem) { _gameplayResources = gameplayResources; _gameConfig = gameConfig; _enemyDef = _gameConfig.enemyConfig.basicEnemy; _dispatcher = Singleton.instance.notificationDispatcher; _dispatcher.AddListener(GameplayEventType.ENEMY_KILLED, OnEnemyDestroyed); }
public static EnemyDef CreateProps() { int count = ScriptableObjectUtility.GetFoldFileCount(DIRECTORY_PATH); EnemyDef enemy = ScriptableObjectUtility.CreateAsset <EnemyDef>( count.ToString(), DIRECTORY_PATH, true ); enemy.CommonProperty.ID = count; return(enemy); }
void OnSetUnit() { EnemyDef def = unitSetting.GetDef(new Vector2Int(x, y)); if (def == null) { EnemyUnitSettingWindow.OpenSetEnemyWindow(x, y, unitSetting, def, 0); } else { EnemyUnitSettingWindow.OpenSetEnemyWindow(x, y, unitSetting, def, def.CommonProperty.ID); } }
public virtual void AssignDef(EnemyDef newDef, Vector2 position = default(Vector2), Direction facingDirection = Direction.Unspecified) { if (!IsInitialized) { Initialize(); //Gets executed the first time this function runs (when we are created rather than drawn from the pool) } groundHandler.Reset(); Def = newDef; transform.position = position.ToV3(); transform.rotation = Quaternion.identity; //(ADVANCED) Force override if (!newDef.ForceIgnore) { Sprite.transform.localScale = new Vector3(Def.Scale, Def.Scale, 1f); switch (Def.DefaultAnchorPoint) { case SpriteAnchorPoint.BottomCenter: Sprite.transform.localPosition = Vector3.zero; break; case SpriteAnchorPoint.Center: Sprite.transform.localPosition = new Vector3(0f, (Def.Scale * Def.CellSize.y) / (2f * Def.PixelsPerUnit), 0f); break; } //Set facing direction - use default if not specified FacingDirection = (facingDirection == Direction.Unspecified) ? Def.DefaultFacingDirection : facingDirection; //Set collider - At this point, sprite is guaranteed to be centered on the x and at the bottom on the y. Collider.size = Def.VisibleSize * Def.Scale; Collider.offset = new Vector2(0f, Collider.size.y / 2f); } //Set animator override if (Def.Animations == null) { Debug.LogError(string.Format("Animator Override Controller not set on '{0}' enemy def!", Def.Name)); } Animator.runtimeAnimatorController = Def.Animations; }
private Enemy CreateEnemyFromDef(EnemyDef definition) { Enemy enemy = new Enemy(_textureManager, _effectsManager, _bulletManager); if (definition.EnemyType == "cannon_fodder") { List<Vector> _pathPoints = new List<Vector>(); _pathPoints.Add(new Vector(1400, 0, 0)); _pathPoints.Add(new Vector(0, 250, 0)); _pathPoints.Add(new Vector(-1400, 0, 0)); enemy.Path = new Path(_pathPoints, 10); } else if (definition.EnemyType == "cannon_fodder_low") { List<Vector> _pathPoints = new List<Vector>(); _pathPoints.Add(new Vector(1400, 0, 0)); _pathPoints.Add(new Vector(0, -250, 0)); _pathPoints.Add(new Vector(-1400, 0, 0)); enemy.Path = new Path(_pathPoints, 10); } else if (definition.EnemyType == "cannon_fodder_straight") { List<Vector> _pathPoints = new List<Vector>(); _pathPoints.Add(new Vector(1400, 0, 0)); _pathPoints.Add(new Vector(-1400, 0, 0)); enemy.Path = new Path(_pathPoints, 14); } else if (definition.EnemyType == "up_l") { List<Vector> _pathPoints = new List<Vector>(); _pathPoints.Add(new Vector(500, -375, 0)); _pathPoints.Add(new Vector(500, 0, 0)); _pathPoints.Add(new Vector(500, 0, 0)); _pathPoints.Add(new Vector(-1400, 200, 0)); enemy.Path = new Path(_pathPoints, 10); } else if (definition.EnemyType == "down_l") { List<Vector> _pathPoints = new List<Vector>(); _pathPoints.Add(new Vector(500, 375, 0)); _pathPoints.Add(new Vector(500, 0, 0)); _pathPoints.Add(new Vector(500, 0, 0)); _pathPoints.Add(new Vector(-1400, -200, 0)); enemy.Path = new Path(_pathPoints, 10); } else { System.Diagnostics.Debug.Assert(false, "Unknown enemy type."); } return enemy; }
public EnemyUnit(int x, int y, EnemyDef enemy = null) { Coord = new Vector2Int(x, y); Enemy = enemy; }
public void OnEnable() { enemy = target as EnemyDef; }
public EnemyUnit(Vector2Int p, EnemyDef enemy = null) { Coord = p; Enemy = enemy; }
static void DebugPool(EnemyDef def) { var pool = GetPool(def); Debug.Log(string.Format("Name: {0} | Active: {1} | Inactive: {2} | Total: {3} | Max: {4}", def.Name, pool.ActiveItems, pool.AvailableItems, pool.TotalItems, pool.MaxPooledItems)); }
private void MainServerController_FigthCreated(MainServerController mainServerController, FightController fightController, EnemyDef enemyDef) { fightController.FightEnd += FightController_FightEnd; _bot = new FightBot(_client.Login, _isWolf, fightController); fightController.KnifeThrow += FightController_KnifeThrow; fightController.SendReady(); }
public static void OpenSetEnemyWindow(int x, int y, EnemyUnitSetting setting, EnemyDef enemy, int index) { OpenWindow(); m_bMedify = true; previousX = x; previousY = y; UnitSetting = setting; unit = new EnemyUnitSetting.EnemyUnit(x, y); unit.Enemy = enemy; if (enemy == null) { unit.Enemy = EnemyDefList[0]; } ActiveIndex = index; }
public EnemyDelay(EnemyDef enemyDef, float delay) { EnemyDef = enemyDef; Delay = delay; }