コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            Ray        ray = new Ray(_cam.transform.position, _cam.transform.forward);
            RaycastHit hit;

            Physics.Raycast(ray, out hit, 10.0f, 1 << LayerMask.NameToLayer("Tree"));
            if (hit.collider != null)
            {
                Fir fir = hit.collider.gameObject.GetComponentInParent <Fir>();
                fir.Hit();
            }

            Physics.Raycast(ray, out hit, 10.0f, 1 << LayerMask.NameToLayer("Door"));
            if (hit.collider != null)
            {
                Door door = hit.collider.gameObject.GetComponentInParent <Door>();
                if (door.IsOpen())
                {
                    door.Open();
                }
                else
                {
                    door.Close();
                }
            }
        }
    }
コード例 #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            Fir fir = db.Firs.Find(id);

            db.Firs.Remove(fir);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #3
0
 public ActionResult Edit([Bind(Include = "Id,LocationDetails,RegistrationDate,CrimeDate,CrimeDetailId")] Fir fir)
 {
     if (ModelState.IsValid)
     {
         db.Entry(fir).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CrimeDetailId = new SelectList(db.CrimeDetails, "Id", "CrimeType", fir.CrimeDetailId);
     return(View(fir));
 }
コード例 #4
0
        public ActionResult Create([Bind(Include = "Id,LocationDetails,RegistrationDate,CrimeDate,CrimeDetailId")] Fir fir)
        {
            if (ModelState.IsValid)
            {
                db.Firs.Add(fir);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.CrimeDetailId = new SelectList(db.CrimeDetails, "Id", "CrimeType", fir.CrimeDetailId);
            return(View(fir));
        }
コード例 #5
0
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Fir fir = db.Firs.Find(id);

            if (fir == null)
            {
                return(HttpNotFound());
            }
            return(View(fir));
        }
コード例 #6
0
        private void timer2_Tick(object sender, EventArgs e)
        {
            if (bRestart)
            {
                bRestart = false;
                Audio_Stop();
                Audio_Start();
            }

            pct = (double)(fpos = Bass.BASS_ChannelGetPosition(Audio_Stream)) / flen;

            if (bSpiral)
            {
                double eee    = (DateTime.Now.Ticks / 10000000 % 61) / 61.0;              //31,61,101
                double spiral = Math.Sin(Math.PI * 2.0 * eee);
                double kkk    = (bInside ? 1.0 + Math.Abs(spiral) / 9.0 : 1.0 - Math.Abs(spiral) / 18.0);
                for (int i = 0; i < DISTORTION; i++)
                {
                    double a = (double)(DISTORTION - 1 - i) / DISTORTION;
                    a        = alpha + spiral * a * a;
                    Xrot [i] = Math.Cos(a) * kkk;
                    Yrot [i] = Math.Sin(a) * kkk;
                }
            }

            if (iFilter != iFilter2)
            {
                iFilter2 = iFilter;
                Xfir     = Mfir [iFilter, 0];
                Yfir     = Mfir [iFilter, 1];
            }

            if (bFlex)
            {
                Palitra = DateTime.Now.Ticks / 10000000 % 100 / 100.0;                 // дрейф палитры
            }

            if (bDistortion)
            {
                kDistortion = 0.5 * Math.Sin(2.0 * Math.PI * (System.Environment.TickCount / 1000 & 127) / 127.0);                 // дрейф искажения
                double kk = (bInside ? (kDistortion < 0.0 ? 0.0 : Math.Abs(kDistortion) / 2.0) : (kDistortion < 0.0 ? -Math.Abs(kDistortion) / 2.0 : 0.0));
                for (int i = 0; i < DISTORTION; i++)
                {
                    DistortionTab [i] = kDistortion * ((double)i / DISTORTION - 1.0) + 1.0 + kk;
                }
            }

            timer1.Interval = Interval;
        }
コード例 #7
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Fir fir = db.Firs.Find(id);

            if (fir == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CrimeDetailId = new SelectList(db.CrimeDetails, "Id", "CrimeType", fir.CrimeDetailId);
            return(View(fir));
        }
コード例 #8
0
        // Decides which tree the index of an array will store
        // Ratio is 4:1 so getting random number out of 50
        private Tree DecideTree(Random rng)
        {
            Tree outputTree;
            int  chosenNumber = rng.Next(50);

            if (chosenNumber <= 10)
            {
                outputTree = new Spruce();
                return(outputTree);
            }
            else
            {
                outputTree = new Fir();
                return(outputTree);
            }
        }
コード例 #9
0
ファイル: PlayerScript.cs プロジェクト: awaymsg/Helicopter
    private void Awake()
    {
        xFir       = new Fir(size);
        yFir       = new Fir(size);
        zFir       = new Fir(size);
        rb         = GetComponent <Rigidbody>();
        minigun    = new Minigun("Minigun", 0.1f, 10);
        spreadshot = new SpreadShot("Spreadshot", 0.3f, 10);
        weapons[0] = minigun;
        weapons[1] = spreadshot;
        weaponIdx  = 0;
        fi         = weapons[weaponIdx].GetFiringInterval();
        numWeapons = 2;
        canShoot   = true;

        CalibrateAccelerometer();
    }
コード例 #10
0
ファイル: PlayerScript.cs プロジェクト: awaymsg/Helicopter
    private void CalibrateAccelerometer()
    {
        int calSampleSize = 2048;
        Fir calxFir       = new Fir(calSampleSize);
        Fir calyFir       = new Fir(calSampleSize);
        Fir calzFir       = new Fir(calSampleSize);

        for (int i = 0; i < calSampleSize; i++)
        {
            calxFir.writeSample(Input.acceleration.x);
            calyFir.writeSample(Input.acceleration.y);
            calzFir.writeSample(Input.acceleration.z);
            new WaitForSecondsRealtime(0.01f);
        }
        wantedDeadZone = new Vector3(calxFir.getOutput(), calyFir.getOutput(), calzFir.getOutput());
        Quaternion rotateQuaternion = Quaternion.FromToRotation(new Vector3(0f, 0f, -1f), wantedDeadZone);
        Matrix4x4  matrix           = Matrix4x4.TRS(Vector3.zero, rotateQuaternion, new Vector3(1f, 1f, 1f));

        calibrationMatrix = matrix.inverse;
    }
コード例 #11
0
    void CreateTrees()
    {
        int     divisions = (int)(_size / _tileSize);
        Vector3 origin    = new Vector3(-_size / 2f, 0, -_size / 2f);

        for (int z = 0; z < divisions; z++)
        {
            for (int x = 0; x < divisions; x++)
            {
                if (Random.value > _fill)
                {
                    continue;
                }

                Fir     fir     = Instantiate(_firPrefab);
                Vector3 treePos = new Vector3(origin.x + _tileSize * x + _tileSize / 2f, origin.y, origin.z + _tileSize * z + _tileSize / 2f);
                treePos.x += Mathf.Lerp(-_tileSize / 2f, _tileSize / 2f, Random.value);
                treePos.z += Mathf.Lerp(-_tileSize / 2f, _tileSize / 2f, Random.value);
                fir.transform.SetParent(transform);
                fir.transform.localPosition = treePos;
            }
        }
    }
コード例 #12
0
        void SetDependences()
        {
            if ((_Buffers[2] != null) && (_Buffers[3] != null))
            {
                byte[] dData      = _Buffers[2];
                int    dLength    = (dData[0] | (dData[1] << 8) | (dData[2] << 16) | (dData[3] << 24));
                int    dNumBlocks = (dLength + 499) / 500;

                for (int i = 0; i < dNumBlocks; i++)
                {
                    if (dData[6 + i] != 1)
                    {
                        return;
                    }
                }

                byte[] uData      = _Buffers[3];
                int    uLength    = (uData[0] | (uData[1] << 8) | (uData[2] << 16) | (uData[3] << 24));
                int    uNumBlocks = (uLength + 499) / 500;

                for (int i = 0; i < uNumBlocks; i++)
                {
                    if (uData[6 + i] != 1)
                    {
                        return;
                    }
                }

                Dictionary <int, Depencence> dependences = new Dictionary <int, Depencence>();
                Dictionary <string, Area>    numberBook  = new Dictionary <string, Area>();

                string   dStr  = Encoding.UTF8.GetString(dData, 6 + dNumBlocks, dLength);
                string[] dRows = dStr.Split(';');

                foreach (string row in dRows)
                {
                    string[] columns = row.Split(',');

                    if (columns.Length == 5)
                    {
                        Area       area;
                        Fir        fir;
                        Depencence dependence;

                        string areaName       = columns[1];
                        string firName        = columns[2];
                        string dependenceName = columns[3] + " (" + columns[4] + ")";

                        if (!numberBook.TryGetValue(areaName, out area))
                        {
                            area = new Area(areaName);
                            numberBook[areaName] = area;
                        }
                        if (!area.TryGetValue(firName, out fir))
                        {
                            fir           = new Fir(firName);
                            area[firName] = fir;
                        }
                        if (!fir.TryGetValue(dependenceName, out dependence))
                        {
                            dependence          = new Depencence(dependenceName);
                            fir[dependenceName] = dependence;
                        }

                        dependences[int.Parse(columns[0])] = dependence;
                    }
                }

                lock (_Sync)
                {
                    _R2Rtb.Clear();
                    _R2Alias.Clear();

                    string   uStr  = Encoding.UTF8.GetString(uData, 6 + uNumBlocks, uLength);
                    string[] uRows = uStr.Split(';');

                    foreach (string row in uRows)
                    {
                        string[] columns = row.Split(',');

                        if (columns.Length == 6)
                        {
                            UserNumber user = new UserNumber(columns[1], columns[2], columns[3], columns[4], columns[5]);
                            dependences[int.Parse(columns[0])][user.Name] = user;

                            if (user.RtbNumber.Length > 2)
                            {
                                _R2Rtb[user.R2Number] = user.RtbNumber;
                            }
                            _R2Alias[user.R2Number] = user.Name;
                        }
                    }
                }

                General.SafeLaunchEvent(NumberBookChangedEngine, this, new RangeMsg <Area>(0, numberBook.Values.Count, numberBook.Values));
            }
        }
コード例 #13
0
ファイル: CameraScript.cs プロジェクト: awaymsg/Helicopter
 private void Awake()
 {
     xFir = new Fir(size);
 }