Exemplo n.º 1
0
Arquivo: App.cs Projeto: X0R0X/mvc
        public App()
        {
            messageBus = new MessageBus();

            IModelRegister register = new ModelRegister();

            register.RegisterModel(new PlayerModel(messageBus));
            register.RegisterModel(new EnemyModel(messageBus));

            IController controller = new Controller(register);

            _viewManager = new ViewManager(controller, messageBus);
            //_viewManager.RegisterView(new PlayerViewMediator());
            //_viewManager.RegisterView(new EnemyViewMediator());

            messageBus.AddEventListener <GameEndEvent>(OnGameEnd);

            controller.RunCommand(new GameStartCmd());

            Run();
        }
Exemplo n.º 2
0
    public Pawn SpawnPlayer(Vector3 position, Quaternion rotation, string model)
    {
        PlayerController pc = GameController.FindObjectOfType <PlayerController>();


        if (pc == null)
        {
            // Instantiate the player

            GameObject go = (GameObject)GameObject.Instantiate(GameController.Instance.PlayerPrefab, position, rotation);
            pc = go.GetComponent <PlayerController>();

            pc.gameObject.name = pc.Name;
        }

        // Setup player model
        string useModel = (ModelRegister.ContainsKey(model) ? model : (ModelRegister.ContainsKey(pc.DefaultModel) ? pc.DefaultModel : "Default"));

        using (BinaryReader reader = new BinaryReader(new MemoryStream(ModelRegister[useModel]))) {
            VoxelUtil.FromMagica(reader, pc.GetComponentInChildren <Volume>().gameObject, 0.075f, false);

            Volume vol = pc.GetComponentInChildren <Volume>();
            vol.Pivot = (new Vector3(vol.XSize, vol.YSize, vol.ZSize) * vol.VoxelSize) / 2f;
            vol.UpdatePivot();
        }

        if (pc.HasStarted)
        {
            pc.Spawn(position);
        }
        else
        {
            pc.QueuedSpawn  = position;
            pc.SpawnAtQueue = true;
        }

        return(pc);
    }
        private List <RequestParameter> LegacyFillParameters(ref List <RequestParameter> parameters,
                                                             ref string action, ref IController controller)
        {
            string msg = "You are using an old version of the native client for the server, or the format of the parameters is out of date. The framework will use the hourly backward compatibility mode, but in future versions support for this parameter format will be discontinued.";

            logger.WriteLog(msg, ServerLogType.ALERT);
            ServerAlertManager.CreateAlert(new ServerAlert(controller.GetType().Name, action, msg));
            Console.ForegroundColor = ConsoleColor.Red;
            Console.WriteLine(msg);
            Console.ForegroundColor = ConsoleColor.White;

            object entityParameterObject      = null;
            HashSet <RequestParameter> result = new HashSet <RequestParameter>();
            MethodInfo       method           = controller.GetType().GetMethod(action);
            RequestParameter requestParameter = null;
            string           currentAlias     = null;

            foreach (RequestParameter parameter in parameters)
            {
                string pName  = parameter.Name;
                string pValue = Convert.ToString(parameter.Value);

                foreach (ParameterInfo pInfo in method.GetParameters())
                {
                    if (parameter.IsComplexType() && !IsSimpleType(pInfo.ParameterType))
                    {
                        ObjectRequestParameter objectRequestParameter = GetObjectParameterType(pName, action, controller.GetType().Name);
                        if (currentAlias != objectRequestParameter.Alias)
                        {
                            currentAlias     = objectRequestParameter.Alias;
                            requestParameter = null;
                            ModelRegister model = modelsManager.GetModelRegister(objectRequestParameter.TypeName);
                            if (model == null)
                            {
                                throw new Exception($"Model type '{objectRequestParameter.TypeName}' not found or not registered");
                            }

                            //instantiate object parameter (public ctor)
                            entityParameterObject = Activator.CreateInstance(model.ModelType);
                        }
                        //requestParameter for a complex type object
                        if (requestParameter == null)
                        {
                            requestParameter = new RequestParameter(parameter.GetAliasName(), entityParameterObject);
                        }
                        FillProperty(entityParameterObject, parameter.GetParameterProperyName(), pValue);
                        break;
                    }

                    //requestParameter for simple type object
                    requestParameter = GetRequestParameterFromType(pInfo, pName, pValue);
                    if (requestParameter != null)
                    {
                        break;
                    }
                }

                if (requestParameter != null)
                {
                    result.Add(requestParameter);
                }
            }
            return(result.ToList());
        }
Exemplo n.º 4
0
 public string Put(ModelRegister stud)
 {
     return(datatest.Put(stud, appsettings.Value.DefaultConnection));
 }
Exemplo n.º 5
0
 protected override void OnModelCreating(DbModelBuilder modelBuilder)
 {
     ModelRegister.Regist(modelBuilder, mappingPath);
     base.OnModelCreating(modelBuilder);
 }
Exemplo n.º 6
0
 /// <summary>
 /// constructor, definition command and model
 /// </summary>
 public VMRegister()
 {
     modelRegister = new ModelRegister();
     AddUser       = new commands.cmdAddUser(this);
 }