Esempio n. 1
0
    private void AddLugarActual(Lugar lugar, List <int> eventos)
    {
        DateTime fechaActual = DateTime.UtcNow;

        int IDInteractuable = lugar.IDInteractuable;
        int IDEscena        = lugar.IDEscena;

        LugarActual lugarActual = new LugarActual(lugar, fechaActual);

        List <LugarActual> lista;

        if (!lugaresActuales.TryGetValue(IDEscena, out lista))
        {
            lista = new List <LugarActual>();
            lugaresActuales.Add(IDEscena, lista);
        }

        lista.Add(lugarActual);
        SumarLugaresActuales();

        InfoInteractuable infoInteractuable;

        if (infoInteractuables.TryGetValue(IDInteractuable, out infoInteractuable))
        {
            ComprobarInteractuableEscenaActual(IDInteractuable, infoInteractuable.DevolverTipo(), infoInteractuable.DevolverIDEscena(), IDEscena,
                                               new Vector3(lugar.coordX, lugar.coordY, lugar.coordZ),
                                               new Quaternion(lugar.rotX, lugar.rotY, lugar.rotZ, lugar.rotW));

            infoInteractuable.SetIDEscena(IDEscena);
            infoInteractuable.SetFechaCambioLugar(fechaActual);

            MarcarEventosDesactualizados(infoInteractuable);

            for (int j = 0; j < eventos.Count; j++)
            {
                CargarEvento(eventos[j], IDInteractuable);
                AddEventoAInteractuable(infoInteractuable, eventos[j]);
            }

            EliminarEventosDesactualizados(IDInteractuable, infoInteractuable);
        }
    }
Esempio n. 2
0
	private void AddLugarActual(Lugar lugar, List<int> eventos)
	{
		DateTime fechaActual = DateTime.UtcNow;

		int IDInteractuable = lugar.IDInteractuable;
		int IDEscena = lugar.IDEscena;

		LugarActual lugarActual = new LugarActual(lugar, fechaActual);

		List<LugarActual> lista;
		if (!lugaresActuales.TryGetValue(IDEscena, out lista))
		{
			lista = new List<LugarActual>();
			lugaresActuales.Add(IDEscena, lista);
		}

		lista.Add(lugarActual);

		InfoInteractuable infoInteractuable;
		if (infoInteractuables.TryGetValue(IDInteractuable, out infoInteractuable))
		{
			ComprobarInteractuableEscenaActual(IDInteractuable, infoInteractuable.DevolverTipo(), infoInteractuable.DevolverIDEscena(), IDEscena, new Vector3(lugar.coordX, lugar.coordY, lugar.coordZ), new Quaternion(lugar.rotX, lugar.rotY, lugar.rotZ, lugar.rotW));
			infoInteractuable.SetIDEscena(IDEscena);
			infoInteractuable.SetFechaCambioLugar(fechaActual);

			MarcarEventosDesactualizados(infoInteractuable);

			for(int j = 0; j < eventos.Count; j++)
			{
				CargarEvento(eventos[j], IDInteractuable);
				AddEventoAInteractuable(infoInteractuable, eventos[j]);
			}

			EliminarEventosDesactualizados(IDInteractuable, infoInteractuable);
		}
	}