///Licensed under Creative Commons Attribution 4.0 License, Written by Clemens Winter
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Exploitation
{
       class EventRequest
    {
        long time;
        Pos pos;
        Ressource ressource;
        Agent agent;
        int mealMax;
        TransferParticles transferToRessource;

        public EventRequest(long time, Pos pos, Ressource ressource, Agent agent, int mealMax, TransferParticles transferToRessource)
        {
            this.time = time;
            this.pos = pos;
            this.ressource = ressource;
            this.agent = agent;
            this.mealMax = mealMax;
            this.transferToRessource = transferToRessource;
        }


        public long Time { get { return time; } }
        public Pos Pos { get { return pos; } }
        public Ressource Ressource { get { return ressource; } }
        public Agent Agent { get { return agent; } }
        public int MealMax { get { return mealMax; } }
        public TransferParticles TransferToRessource { get { return transferToRessource; } }


        public override string ToString()
        {
            return time.ToString();
        }
    }


    public class Pos
    {
        int[] pos;


        public Pos(int xPos, int yPos, int zPos)
        {
            pos = new int[3];
            pos[0] = xPos;
            pos[1] = yPos;
            pos[2] = zPos;
        }


        public int XPos { get { return pos[0]; } }
        public int YPos { get { return pos[1]; } }
        public int ZPos { get { return pos[2]; } }
    }
}
