示例#1
0
    void NextTarget()
    {
        xz xz = passable[Random.Range(0, passable.Count)];

        targetObj.transform.position = controller.Xz2Coord(xz.x, xz.z);
        ChaseTarget();
    }
示例#2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            var time = DateTime.Parse("2017-09-01");
            var week = (int)time.DayOfWeek;

            using (var db = new yudingEntities())
            {
                var ratecodelist = db.newroom_t.Where(x => x.flag == 0).ToList();
                var list         = new List <info>();

                foreach (var item in ratecodelist)
                {
                    var b = new info()
                    {
                        xz = new List <xz>()
                    };
                    if (db.roomtimestart_t.Any(x => x.flag == 0 && x.roomtype == item.roomtype && x.startdate <= time && x.enddate >= time))
                    {
                        //集合里添加一个房型
                        b.roomtype = item.roomtype;
                        b.roomname = item.descript;
                        var xz1    = new List <xz>();
                        var xzlist = db.rateroom_xz.Where(x => x.roomtype == item.roomtype && x.flag == 0).GroupBy(x => x.roomtype).ToList();
                        foreach (var item1 in xzlist)
                        {
                            var xzcode = item1.FirstOrDefault(x => x.WeekIndex == week).xz_code;
                            var isok   = db.everydate_price_t.Where(x => x.everydate == time && x.xz_code == xzcode).FirstOrDefault();
                            if (isok != null)
                            {
                                //集合里添加一个房价码
                                var s = new xz()
                                {
                                    xz_code = item1.FirstOrDefault().xz_code.ToString(),
                                    xz_name = item1.FirstOrDefault().xz_name.ToString(),
                                    price   = isok.price,
                                    package = isok.package,
                                };
                                xz1.Add(s);
                                b.xz.AddRange(xz1);
                            }
                        }
                        var min = db.everydate_price_t.Where(x => x.everydate == time).Min(x => x.price);
                        b.minprice = min;
                        list.Add(b);
                    }
                }
            }
        }
示例#3
0
    private float ReturnMinORMax(bool b, getRowOrCloumn _getRowOrCloumn, xz _xz)
    {
        List <Node>  tempFirst = new List <Node>();
        List <float> values    = new List <float>();

        if (b)
        {
            tempFirst = _getRowOrCloumn(0);
        }
        else
        {
            tempFirst = _getRowOrCloumn(NodeRes - 1);
        }

        foreach (Node item in tempFirst)
        {
            switch (_xz)
            {
            case xz.x:
                values.Add(item.transform.position.x);
                break;

            case xz.z:
                values.Add(item.transform.position.z);
                break;

            default:
                break;
            }
        }



        values.Sort();

        if (b)
        {
            return(values[0]);
        }
        else
        {
            values.Reverse();

            return(values[0]);
        }
    }
示例#4
0
    void NextTarget()
    {
        if (state != GhostState.eyes)
        {
            xz xz = passable[Random.Range(0, passable.Count)];
            targetObj.transform.position = controller.Xz2Coord(xz.x, xz.z);
        }
        else
        {
            if (transform.position.x > 0)
            {
                targetObj.transform.position = new Vector3(0.5f, 0, 4);
            }
            else
            {
                targetObj.transform.position = new Vector3(-0.5f, 0, 4);
            }

            trials = 0;

            if (Vector3.Distance(transform.position, targetObj.transform.position) < 2)
            {
                state = GhostState.gohome;
            }
            else
            {
                switch (trials)
                {
                case 0:
                    targetObj.transform.position = new Vector3(1, 0, 4);
                    break;

                default:
                    targetObj.transform.position = new Vector3(0, 0, 4);
                    break;
                }
                trials++;
            }
        }
        ChaseTarget();
    }
示例#5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //var time = DateTime.Parse("2017-08-24");
            //var index = (int)time.DayOfWeek;
            //var a = index.ToString();
            //using (var db = new yudingEntities())
            //{
            //    var roomlist = new List<roomlist>()
            //    {


            //    };
            //    var roomtime = db.newroomtimes.Where(x => x.startdate <= time && time <= x.enddate && x.flag == 0 && x.week == a).ToList();
            //    foreach (var item in roomtime)
            //    {
            //        var room = new roomlist()
            //        {
            //            roomname=item.descript,
            //            roomtype=item.roomtype,
            //            pricelist=new List<price>(),
            //        };

            //        var xz = db.GetRoomAndPrices.Where(x => x.roomtype == item.roomtype && x.WeekIndex == index).ToList();
            //        foreach (var item1 in xz)
            //        {
            //            var  x =

            //        }


            //    }
            using (var db = new yudingEntities())
            {
                var ratecode = "KSHZ20170828396";
                var a        = db.GetRateCode_xz.Where(x => x.ratecode == ratecode).GroupBy(x => x.roomtype).ToList();
                var list     = new List <info>();
                var time     = DateTime.Parse("2017-08-24");
                foreach (var item in a)
                {
                    var b = new info()
                    {
                        xz = new List <xz>()
                    };
                    var r = item.FirstOrDefault().roomtype;
                    if (db.roomtimestart_t.Any(x => x.roomtype == r && x.startdate == time && x.flag == 0))
                    {
                        b.roomtype = item.FirstOrDefault().roomtype;
                        b.roomname = item.FirstOrDefault().descript;
                    }
                    var xz1 = new List <xz>();
                    foreach (var item1 in item.GroupBy(x => x.xz_code))
                    {
                        var c = item1.FirstOrDefault().xz_code;
                        if (db.everydate_price_t.Any(x => x.xz_code == c && x.everydate == time))
                        {
                            var s = new xz()
                            {
                                xz_code = item1.FirstOrDefault().xz_code.ToString(),
                                xz_name = item1.FirstOrDefault().xz_name.ToString(),
                                price   = item1.FirstOrDefault().price,
                                package = item1.FirstOrDefault().package,
                            };
                            xz1.Add(s);
                        }
                    }
                    b.xz.AddRange(xz1);
                    list.Add(b);
                }
                var json = JsonConvert.SerializeObject(list);
                Response.Write(json);
            }
        }
示例#6
0
    void LoadMapData()
    {
        TextAsset textasset = new TextAsset(); 
 textasset = Resources.Load("mapdata", typeof(TextAsset)) as TextAsset; 

        string    text = textasset.text;

        string[] lines = text.Split('\n');

        map = new List <List <mapdata> >();

        // textfile -> list<list<T>>
        int RowNo = 0;

        foreach (string line in lines)
        {
            List <mapdata> row   = new List <mapdata>();
            int            ColNo = 0;
            foreach (char c in line)
            {
                mapdata tmp = new mapdata();

                tmp.objchar = c;
                //tmp.coordinate = new Vector3(-13.5f + ColNo , 0, 15 - RowNo);
                tmp.coordinate = Xz2Coord(ColNo, RowNo);

                row.Add(tmp);
                ColNo++;
            }
            map.Add(row);
            RowNo++;
        }

        // List<List<T>> -> object(obstruct, cookie, etc...)
        for (int i = 0; i < lines.Length; i++)
        {
            for (int j = 0; j < lines[i].Length; j++)
            {
                char[] dirobj = new char[4];
                for (int k = 0; k < 4; k++)
                {
                    int x = j + vx[k];
                    int z = i + vz[k];

                    // Debug.Log("[" + i + "][" + j + "][" + x + "][" + z + "]");
                    if (x >= 0 && x < 28 && z >= 0 && z < 31)
                    {
                        dirobj[k] = lines[z][x];
                    }
                    else
                    {
                        dirobj[k] = '*';
                    }
                }

                switch (lines[i][j])
                {
                case '#':
                    GameObject obstruct = Instantiate(obstructPrefab);
                    obstruct.transform.position = new Vector3(-13.5f + j, 0.1f, 15 - i);

                    for (int k = 0; k < 4; k++)
                    {
                        if (dirobj[k] == '#')
                        {
                            GameObject obstruct2 = Instantiate(obstructPrefab);
                            obstruct2.transform.position = new Vector3(-13.5f + j + 0.5f * vx[k], 0.1f, 15 - i - 0.5f * vz[k]);
                        }
                    }

                    break;

                case '.':
                    GameObject cookie = Instantiate(cookiePrefab);
                    cookie.transform.position = new Vector3(-13.5f + j, 0.1f, 15 - i);
                    cookieCount++;
                    break;

                case '@':
                    GameObject powerCookie = Instantiate(powerCookiePrefab);
                    powerCookie.transform.position = new Vector3(-13.5f + j, 0.1f, 15 - i);
                    cookieCount++;
                    break;

                default:
                    break;
                }

                if (lines[i][j] == '.' || lines[i][j] == '@' || lines[i][j] == ' ')
                {
                    xz tmp = new xz();
                    tmp.x = j;
                    tmp.z = i;
                    passable.Add(tmp);
                }
            }
        }
    }