Как я могу ссылаться на переменную класса как элемент в списке? - PullRequest
0 голосов
/ 11 октября 2019

Я работаю над стратегической игрой и хочу создать список. В списке должны отображаться элементы ака. цивилизации на выбор. Я уже создал классы:

public class Civilization
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string OwnerName { get; set; }
    public CivAbility UniqueAb1{get;set;}
    public CivAbility UniqueAb2 { get; set; }
    public Unit UniqueUnit1 { get; set; } 
    public Unit UniqueUnit2 { get; set; }
    public Building UniqueBuild1 { get; set; }
    public Building UniqueBuild2 { get; set; }
    public Improvement UniqueImprove1 { get; set; }

    public Civilization(int id, string name, string ownername, CivAbility uniqueab1, 
                         Unit uniqueunit1 = null, Unit uniqueunit2 = null, 
                         Building uniquebuild1 = null, Building uniquebuild2 = null, 
                         Improvement uniqueImprove1=null)
    {
        Id = id;
        Name = name;
        UniqueUnit1 = uniqueunit1;

    }
}

Вот часть моего класса World, где я определяю типы этих классов. Я также создал константы для использования в качестве идентификатора типа CIV_ID_GERMAN для «Германия». Остальные переменные представляют собой отображаемое имя, имя юнитов, принадлежащих Германии, и название их способности:

Civilization Germany = new Civilization(CIV_ID_GERMAN,"Germany","German", FurorTeutonicus);

А вот часть основной программы, которая должна добавить «Германия» в список:

public partial class Form1 : Form
{
    public Player _player;

    public Form1()
    {
        InitializeComponent();
        listBoxCiv.Items.Add(new Civilization(CIV_ID_GERMAN, "Germany", 
            "German", FurorTeutonicus));
    }
}

Показывает ошибку для CIV_ID_GERMAN и FurorTeutonicus "не существует в текущем контексте".

Как заставить это работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...