コード例 #1
0
ファイル: StateMachine.cs プロジェクト: DelBero/XnaScrap
        /// <summary>
        /// 
        /// </summary>
        /// <param name="objectBuilder"></param>
        public static void registerElement(IObjectBuilder objectBuilder)
        {
            ParameterSequenceBuilder sequenceBuilder = new ParameterSequenceBuilder();
            sequenceBuilder.createSequence();

            CompoundParameter transition = new CompoundParameter("transition");
            transition.addParameter(new IdParameter("msg", ""));
            transition.addParameter(new IdParameter("from",""));
            transition.addParameter(new IdParameter("to", ""));

            sequenceBuilder.addParameter(new IdParameter("initState", ""));
            sequenceBuilder.addParameter(new SequenceParameter("transitions", transition));

            objectBuilder.registerElement(new Constructor(), sequenceBuilder.CurrentSequence, typeof(StateMachine), "StateMachine", null);
        }
コード例 #2
0
ファイル: InputContext.cs プロジェクト: DelBero/XnaScrap
        /// <summary>
        /// 
        /// </summary>
        /// <param name="objectBuilder"></param>
        public static void registerElement(IObjectBuilder objectBuilder, IInputManager inputManager, Core core)
        {
            ParameterSequenceBuilder sequenceBuilder = new ParameterSequenceBuilder();
            sequenceBuilder.createSequence();

            sequenceBuilder.addParameter(new BoolParameter("lastKey","false"));
            sequenceBuilder.addParameter(new BoolParameter("lastMouse", "false"));
            sequenceBuilder.addParameter(new BoolParameter("lastTouch", "false"));
            sequenceBuilder.addParameter(new BoolParameter("lastGamepad", "false"));
            sequenceBuilder.addParameter(new StringParameter("playerIndex","One"));

            CompoundParameter keymapping = new CompoundParameter("keymapping");
            keymapping.addParameter(new StringParameter("key",""));
            keymapping.addParameter(new BoolParameter("pressed", "false"));
            keymapping.addParameter(new IdParameter("downMsgId", ""));
            keymapping.addParameter(new IdParameter("upMsgId", ""));
            keymapping.addParameter(new IdParameter("target",""));
            keymapping.addParameter(new StringParameter("message", ""));
            SequenceParameter keymappings = new SequenceParameter("keymappings", keymapping);

            CompoundParameter keyboardMappings = new CompoundParameter("keyboard");
            keyboardMappings.addParameter(keymappings);
            sequenceBuilder.addParameter(keyboardMappings);

            CompoundParameter gamepadmapping = new CompoundParameter("gamepadmapping");
            gamepadmapping.addParameter(new StringParameter("key", "Start"));
            gamepadmapping.addParameter(new BoolParameter("pressed", "false"));
            gamepadmapping.addParameter(new IdParameter("downMsgId", ""));
            gamepadmapping.addParameter(new IdParameter("upMsgId", ""));
            gamepadmapping.addParameter(new IdParameter("target", ""));
            gamepadmapping.addParameter(new StringParameter("message", ""));
            SequenceParameter gamepadmappings = new SequenceParameter("gamepadmappings", gamepadmapping);

            //CompoundParameter gamepadLeftStickMapping = new CompoundParameter("leftStickMapping");
            //gamepadLeftStickMapping.addParameter(new IdParameter("movedMsgId",""));
            //gamepadLeftStickMapping.addParameter(new IdParameter("target", ""));

            //CompoundParameter gamepadRightStickMapping = new CompoundParameter("rightStickMapping");
            //gamepadRightStickMapping.addParameter(new IdParameter("movedMsgId", ""));
            //gamepadRightStickMapping.addParameter(new IdParameter("target", ""));

            CompoundParameter gamepadMappings = new CompoundParameter("gamepad");
            gamepadMappings.addParameter(gamepadmappings);
            //gamepadMappings.addParameter(gamepadLeftStickMapping);
            //gamepadMappings.addParameter(gamepadRightStickMapping);
            sequenceBuilder.addParameter(gamepadMappings);

            objectBuilder.registerElement(new Constructor(inputManager, core), sequenceBuilder.CurrentSequence, typeof(InputContext), "InputContext", null);
        }
コード例 #3
0
ファイル: ParameterSequence.cs プロジェクト: DelBero/XnaScrap
 public ParameterSequence()
 {
     m_root = new CompoundParameter("");
 }
コード例 #4
0
ファイル: Parameter.cs プロジェクト: DelBero/XnaScrap
 public override Parameter clone()
 {
     CompoundParameter ret = new CompoundParameter(Name);
     foreach (KeyValuePair<String, Parameter> entry in m_parameters)
     {
         ret.Parameters.Add(entry.Key, entry.Value.clone());
     }
     return ret;
 }
コード例 #5
0
ファイル: Camera.cs プロジェクト: DelBero/XnaScrap
        /// <summary>
        /// 
        /// </summary>
        /// <param name="objectBuilder"></param>
        public static void registerElement(IObjectBuilder objectBuilder, RenderManager renderMan)
        {
            ParameterSequenceBuilder sequenceBuilder = new ParameterSequenceBuilder();
            sequenceBuilder.createSequence();

            sequenceBuilder.addParameter(new IdParameter("renderTarget",DefaultRenderTarget.DEFAULT_RENDERTARGET_ID.ToString()));
            CompoundParameter frustum = new CompoundParameter("Frustum");
            frustum.addParameter(new FloatParameter("fovy","45.0"));
            frustum.addParameter(new FloatParameter("near","1.0"));
            frustum.addParameter(new FloatParameter("far", "1000.0"));
            #if WINDOWS_PHONE
            frustum.addParameter(new FloatParameter("aspect", "1.6666666666666"));     // 1.666666666
            #else
            frustum.addParameter(new FloatParameter("aspect", "1.333333333"));
            #endif
            sequenceBuilder.addParameter(frustum);
            CompoundParameter viewport = new CompoundParameter("Viewport");
            viewport.addParameter(new IntParameter("x", "0"));
            viewport.addParameter(new IntParameter("y", "0"));
            viewport.addParameter(new IntParameter("w", "-1")); // this means full size
            viewport.addParameter(new IntParameter("h", "-1"));

            sequenceBuilder.addParameter(viewport);

            ParameterSequence parameters = sequenceBuilder.CurrentSequence;

            // messages
            sequenceBuilder.createSequence();
            sequenceBuilder.addParameter(new IdParameter("msgId", CHANGE_PROJ_ID.ToString()));
            sequenceBuilder.addParameter(new FloatParameter("fovy", "45.0"));
            sequenceBuilder.addParameter(new FloatParameter("near", "1.0"));
            sequenceBuilder.addParameter(new FloatParameter("far", "1000.0"));
            #if WINDOWS_PHONE
            sequenceBuilder.addParameter(new FloatParameter("aspect", "1.6666666666666"));     // 1.666666666
            #else
            sequenceBuilder.addParameter(new FloatParameter("aspect", "1.333333333"));
            #endif
            List<ParameterSequence> messages = new List<ParameterSequence> { sequenceBuilder.CurrentSequence };

            objectBuilder.registerElement(new Constructor(renderMan), parameters, typeof(Camera), "Camera", messages);
        }