//This code create by CodeEngine ,don't modify

using System;
using System.Collections.Generic;
using System.Collections;
using Module.Log;
  
namespace GCGame.Table
{

    public class Tab_LivingSkillItem{

    public const string TAB_FILE_DATA = "LivingSkillItem";
	private const int _varCount = 44;
	
	public int GetId()
	{
		return Id;
	}
	
	public static bool Validate(string line)
	{
		var segments = 0;
		foreach (char c in line) 
			if (c == '\t')
				segments++;
		// Note: skip the 2nd column as it's the description;
		var result = segments == _varCount;
		if (!result)
			LogModule.ErrorLog(string.Format("Load {0} error as CodeSize:{1} not Equal DataSize:{2}", TAB_FILE_DATA, _varCount, segments));
		return result;
	}
	
	public Tab_LivingSkillItem()
	{
	}
	
	public Tab_LivingSkillItem(string line)
	{
		var segments = line.Split('\t');
          Id = int.Parse(segments[0]);
          NeedSkillGroupID = int.Parse(segments[2]);
          NeedSkillLevel = int.Parse(segments[3]);
          ItemGroupID = segments[4].Trim();
          ItemDesc = segments[5].Trim();
          SemiFinishedProduct = int.Parse(segments[6]);
          SceneID = int.Parse(segments[7]);
          PosX = float.Parse(segments[8]);
          PosZ = float.Parse(segments[9]);
          RotY = float.Parse(segments[10]);
          ConsumeType[0] = int.Parse(segments[11]);
ConsumeType[1] = int.Parse(segments[14]);
ConsumeType[2] = int.Parse(segments[17]);
ConsumeType[3] = int.Parse(segments[20]);
ConsumeType[4] = int.Parse(segments[23]);
ConsumeType[5] = int.Parse(segments[26]);
          ConsumeSubType[0] = int.Parse(segments[12]);
ConsumeSubType[1] = int.Parse(segments[15]);
ConsumeSubType[2] = int.Parse(segments[18]);
ConsumeSubType[3] = int.Parse(segments[21]);
ConsumeSubType[4] = int.Parse(segments[24]);
ConsumeSubType[5] = int.Parse(segments[27]);
          ConsumeNum[0] = int.Parse(segments[13]);
ConsumeNum[1] = int.Parse(segments[16]);
ConsumeNum[2] = int.Parse(segments[19]);
ConsumeNum[3] = int.Parse(segments[22]);
ConsumeNum[4] = int.Parse(segments[25]);
ConsumeNum[5] = int.Parse(segments[28]);
          ConsumeTypeA = int.Parse(segments[29]);
          ConsumeSubTypeA = int.Parse(segments[30]);
          ConsumeNumA = int.Parse(segments[31]);
          ConsumeTypeB = int.Parse(segments[32]);
          ConsumeSubTypeB = int.Parse(segments[33]);
          ConsumeNumB = int.Parse(segments[34]);
          ProductItemID[0] = int.Parse(segments[35]);
ProductItemID[1] = int.Parse(segments[37]);
ProductItemID[2] = int.Parse(segments[39]);
ProductItemID[3] = int.Parse(segments[41]);
ProductItemID[4] = int.Parse(segments[43]);
          ProductItemIDNum[0] = int.Parse(segments[36]);
ProductItemIDNum[1] = int.Parse(segments[38]);
ProductItemIDNum[2] = int.Parse(segments[40]);
ProductItemIDNum[3] = int.Parse(segments[42]);
ProductItemIDNum[4] = int.Parse(segments[44]);

	}
  
    public int Id { get; private set; }
  
    public int NeedSkillGroupID { get; private set; }
  
    public int NeedSkillLevel { get; private set; }
  
    public string ItemGroupID { get; private set; }
  
    public string ItemDesc { get; private set; }
  
    public int SemiFinishedProduct { get; private set; }
  
    public int SceneID { get; private set; }
  
    public float PosX { get; private set; }
  
    public float PosZ { get; private set; }
  
    public float RotY { get; private set; }
  
	public readonly int[] ConsumeType = new int[6];
	public int getConsumeTypeCount() { return ConsumeType.Length; } 
	public int GetConsumeTypebyIndex(int idx)
    {
		if(idx >= 0 && idx < ConsumeType.Length)
			return ConsumeType[idx];
		return default(int);
    }
  
	public readonly int[] ConsumeSubType = new int[6];
	public int getConsumeSubTypeCount() { return ConsumeSubType.Length; } 
	public int GetConsumeSubTypebyIndex(int idx)
    {
		if(idx >= 0 && idx < ConsumeSubType.Length)
			return ConsumeSubType[idx];
		return default(int);
    }
  
	public readonly int[] ConsumeNum = new int[6];
	public int getConsumeNumCount() { return ConsumeNum.Length; } 
	public int GetConsumeNumbyIndex(int idx)
    {
		if(idx >= 0 && idx < ConsumeNum.Length)
			return ConsumeNum[idx];
		return default(int);
    }
  
    public int ConsumeTypeA { get; private set; }
  
    public int ConsumeSubTypeA { get; private set; }
  
    public int ConsumeNumA { get; private set; }
  
    public int ConsumeTypeB { get; private set; }
  
    public int ConsumeSubTypeB { get; private set; }
  
    public int ConsumeNumB { get; private set; }
  
	public readonly int[] ProductItemID = new int[5];
	public int getProductItemIDCount() { return ProductItemID.Length; } 
	public int GetProductItemIDbyIndex(int idx)
    {
		if(idx >= 0 && idx < ProductItemID.Length)
			return ProductItemID[idx];
		return default(int);
    }
  
	public readonly int[] ProductItemIDNum = new int[5];
	public int getProductItemIDNumCount() { return ProductItemIDNum.Length; } 
	public int GetProductItemIDNumbyIndex(int idx)
    {
		if(idx >= 0 && idx < ProductItemIDNum.Length)
			return ProductItemIDNum[idx];
		return default(int);
    }
  

    }
}