/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package de.nplusc.iZc.MazeGame.Objects;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 *
 * @author LH
 */
public class Player
{
    private List<String> keys = new ArrayList<>();
    private List<String> JournalIDs = new ArrayList<>();
    private List<String> JournalTexta = new ArrayList<>();
    
    private Map<String,String[]> mixedAttribs = new HashMap<>();
    
    
        private Map<Integer,
                Map<Integer,Boolean>
                > ChunkUncovering = new HashMap<>();
    
    
    
            //x;y 
    
    private Map<Integer,
                Map<Integer,Boolean>
                > FOVData = new HashMap<>();
    
    
    
    private int chunk_x,chunk_y,pos_x,pos_y,pos_z;
    
    
    public List<String> getJournalIDs()
    {
        return JournalIDs;
    }

    public void setJournalIDs(List<String> JournalIDs)
    {
        this.JournalIDs = JournalIDs;
    }

    public List<String> getJournalTexta()
    {
        return JournalTexta;
    }

    public void setJournalTexta(List<String> JournalTexta)
    {
        this.JournalTexta = JournalTexta;
    }
    
    public boolean addKey(String keyID)
    {
        boolean ret = true;
        if(!keys.contains(keyID))
            keys.add(keyID);
        else
            ret=false;
        return ret;
    }
    
    public List<String> getKeys()
    {
        return keys;
    }                           
    public void telePort(int targetChunkX,int targetChunkY,int x,int y, int z)//made for the portals && the SheetChange-Events
    {
        chunk_x = targetChunkX;
        chunk_y = targetChunkY;
        pos_x = x; pos_y = y; pos_z = z;
    }


    public int getChunk_x()
    {
        return chunk_x;
    }

    public void setChunk_x(int chunk_x)
    {
        this.chunk_x = chunk_x;
    }

    public int getChunk_y()
    {
        return chunk_y;
    }

    public void setChunk_y(int chunk_y)
    {
        this.chunk_y = chunk_y;
    }

    public int getPos_x()
    {
        return pos_x;
    }

    public void setPos_x(int pos_x)
    {
        this.pos_x = pos_x;
    }

    public int getPos_y()
    {
        return pos_y;
    }

    public void setPos_y(int pos_y)
    {
        this.pos_y = pos_y;
    }

    public int getPos_z()
    {
        return pos_z;
    }

    public void setPos_z(int pos_z)
    {
        this.pos_z = pos_z;
    }

    public Map<String, String[]> getMixedAttribs()
    {
        return mixedAttribs;
    }

    public void setMixedAttribs(Map<String, String[]> mixedAttribs)
    {
        this.mixedAttribs = mixedAttribs;
    }

    public Map<Integer, Map<Integer, Boolean>> getChunkUncovering()
    {
        return ChunkUncovering;
    }

    public void setChunkUncovering(Map<Integer, Map<Integer, Boolean>> ChunkUncovering)
    {
        this.ChunkUncovering = ChunkUncovering;
    }

    public Map<Integer, Map<Integer, Boolean>> getFOVData()
    {
        return FOVData;
    }

    public void setFOVData(Map<Integer, Map<Integer, Boolean>> FOVData)
    {
        this.FOVData = FOVData;
    }
    
    
    
}
