本文整理汇总了C#中Tower.Add方法的典型用法代码示例。如果您正苦于以下问题:C# Tower.Add方法的具体用法?C# Tower.Add怎么用?C# Tower.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tower
的用法示例。
在下文中一共展示了Tower.Add方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: FindEmpTower
public static void FindEmpTower(int direction, FieldIndex ind, Field<bool> taken, ref List<Tower> buildList)
{
//Debug.Log("Finding 2nd piece forward on "+tmp.ToString());
Tower newTower = new Tower();
FieldIndex tmp = ind.Up(direction);
newTower.Add(ind);
newTower.Add(tmp);
newTower.type = TowerType.silence;
ind = tmp;
FieldIndex right = ind.Right(direction);
FieldIndex left = ind.Left(direction);
bool left_tower = left.index != -1 && taken[left] == true;
bool right_tower = right.index != -1 && taken[right] == true;
if(left_tower && right_tower){
// Debug.Log("Finding 3rd piece forward on "+tmp.ToString());
Tower rightTower = newTower.Copy();
newTower.Add(left);
//Debug.Log(newTower.ToString());
rightTower.Add(right);
//Debug.Log(rightTower.ToString());
tmp = left.Up(direction);
FieldIndex tmpRight = right.Up(direction);
if(tmp.index != -1 && taken[tmp]==true){
newTower.Add(tmp);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
if(tmpRight.index != -1 && taken[tmpRight]==true){
rightTower.Add(tmpRight);
// Debug.Log(newTower.ToString());
buildList.Add(rightTower);
}
}
else if(left_tower){
newTower.Add(left);
tmp = left.Up(direction);
if(tmp.index != -1 && taken[tmp]==true){
newTower.Add(tmp);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
}
else if(right_tower){
newTower.Add(right);
tmp = right.Up(direction);
if(tmp.index != -1 && taken[tmp]==true){
newTower.Add(tmp);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
}
}
示例2: MoveToTop
public void MoveToTop(Tower t)
{
int top = disks.Pop ();
t.Add (top);
}
示例3: FindSquareTower
public static void FindSquareTower(int direction, FieldIndex ind, Field<bool> taken, ref List<Tower> buildList)
{
Tower newTower = new Tower();
newTower.type = TowerType.skillCap;
//Debug.Log("Found 2nd piece forward on "+ind.ToString());
newTower.Add(ind);
FieldIndex tmp = ind.Up(direction);
newTower.Add(tmp);
ind = tmp.Right(direction);
//Debug.Log("Looking for 3rd piece forward on "+tmp.ToString());
if(ind.index != -1 && taken[ind]==true){
newTower.Add(ind);
ind = ind.Down(direction);
//Debug.Log("Looking for 4th piece right on "+tmp.ToString());
if(ind.index != -1 && taken[ind]==true){
newTower.Add(ind);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
}
}
示例4: FindShootTower
public static void FindShootTower(int direction, FieldIndex ind, Field<bool> taken, ref List<Tower> buildList)
{
//Debug.Log("Finding 2nd piece forward on "+tmp.ToString());
Tower newTower = new Tower();
FieldIndex tmp = ind.Up(direction);
newTower.Add(ind);
newTower.Add(tmp);
newTower.type = TowerType.shoot;
ind = tmp;
FieldIndex left = ind.Left(direction);
FieldIndex right = ind.Right(direction);
bool left_tower = left.index != -1 && taken[left] == true;
bool right_tower = right.index != -1 && taken[right] == true;
if(left_tower && right_tower){ //Shoot tower found.
newTower.Add(left);
newTower.Add(right);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
}
示例5: FindFiveTower
public static void FindFiveTower(int direction, FieldIndex ind, Field<bool> taken, ref List<Tower> buildList)
{
Tower newTower = new Tower();
FieldIndex tmp = ind.Up(direction);
newTower.Add(ind);
newTower.Add(tmp);
newTower.type = TowerType.five;
ind = tmp;
tmp = ind.Up(direction);
if(tmp.index != -1 && taken[tmp] == true){
newTower.Add(tmp);
ind = tmp;
tmp = ind.Up(direction);
if(tmp.index != -1 && taken[tmp] == true){
newTower.Add(tmp);
ind = tmp;
tmp = ind.Up(direction);
if(tmp.index != -1 && taken[tmp] == true){
newTower.Add(tmp);
// Debug.Log(newTower.ToString());
buildList.Add(newTower);
}
}
}
}
示例6: MoveTopTo
public void MoveTopTo(Tower tower)
{
var top = _disks.Pop();
tower.Add(top);
}