Esempio n. 1
0
            public Traits(AvianSoul soul)
            {
                var tr = soul.traits;

                receptiveness = VectorTrait.trait2(vec_receptiveness, new[] {
                    tr.loyalty, tr.aggression
                });
            }
Esempio n. 2
0
            public Traits(AvianSoul soul)
            {
                var tr = soul.traits;

                annoyed = VectorTrait.trait2(vec_annoyed, new[] {
                    tr.wary, tr.spontaneity
                });
            }
Esempio n. 3
0
            public Traits(AvianSoul soul)
            {
                var tr = soul.traits;

                anger = VectorTrait.trait2(vec_anger, new[] {
                    tr.wary, tr.aggression
                });
            }
Esempio n. 4
0
        /// <summary>
        /// instantiate the player wing and add components
        /// </summary>
        /// <param name="pos"></param>
        /// <returns></returns>
        public Wing createPlayer(Vector2 pos)
        {
            var playerSoul = new AvianSoul();

            playerSoul.ply = BirdPersonality.makeNeutral();
            var mind   = new DuckMind(playerSoul, false);
            var player = createWing(Constants.Game.PLAYER_NAME, pos, mind);

            player.AddComponent(new PlayerInputController(0));
            state.player = player; // save player
            return(player);
        }
Esempio n. 5
0
        public override void Initialize()
        {
            base.Initialize();

            ClearColor = gameContext.assets.bgColor;

            // show cursor
            Core.Instance.IsMouseVisible = true;

            // add fixed renderer
            var fixedRenderer =
                AddRenderer(new ScreenSpaceRenderer(1023, renderlayer_ui_overlay));

            fixedRenderer.ShouldDebugRender = false;

            playerNt = CreateEntity(Constants.Game.PLAYER_NAME, new Vector2(400, 400)).SetTag(Constants.Tags.WING);
            var playerSoul = new AvianSoul();

            playerSoul.ply = BirdPersonality.makeNeutral();
            var playerWing = playerNt.AddComponent(new Wing(new DuckMind(playerSoul, false)));

            playerNt.AddComponent(new PlayerInputController(0));

            // add our physicist
            physicistDuck = CreateEntity("physical", new Vector2(300f, 200f)).SetTag(Constants.Tags.WING);
            var physicistSoul = new AvianSoul {
                ply = new BirdPersonality {
                    A = 0.8f, S = -0.4f
                }
            };
            var duckWing = physicistDuck.AddComponent(new Wing(new DuckMind(physicistSoul, true)));

            physicistDuck.AddComponent <LogicInputController>();
            physicistDuck.AddComponent(new MindDisplay(playerWing, true));
            duckWing.core.energy = 1000f;
            duckWing.mind.state.addOpinion(playerWing, Constants.DuckMind.OPINION_FRIEND);

            // set the player as the target
            duckWing.mind.state.plan.Enqueue(new EntityTarget(duckWing.mind, playerWing.Entity, Approach.Within,
                                                              TargetSource.RANGE_MED));

            var wingInteractions = AddEntityProcessor(new WingUpdateSystem());

            // add component to make Camera follow the player
            var followCamera =
                Camera.Entity.AddComponent(new LockedCamera(playerNt, Camera, LockedCamera.LockMode.Position));

            followCamera.AddComponent <CameraShake>();
        }
Esempio n. 6
0
 public DuckMind(AvianSoul soul, bool control) : base(new DuckMindState())
 {
     this.control  = control;
     this.soul     = soul;
     useThreadPool = NGame.config.threadPoolAi;
 }