Ejemplo n.º 1
0
 private void IsWarrantApproved()
 {
     _cData = LtFlash.Common.Serialization.Serializer.LoadItemFromXML <CaseData>(Main.CDataPath);
     if (!_cData.WarrantAccess)
     {
         return;
     }
     if (!_cData.WarrantHeard)
     {
         return;
     }
     if (_cData.WarrantApproved)
     {
         "Warrant Approved".AddLog();
         "Sexual Assault Case Update".DisplayNotification("Warrant ~g~approved", _cData.Number);
         SetScriptFinished();
     }
     else
     {
         "Warrant Not Approved".AddLog();
         Attributes.NextScripts.Clear();
         GameFiber.StartNew(delegate
         {
             var failedScreen = new MissionFailedScreen("Warrant denied");
             failedScreen.Show();
             while (!Game.IsKeyDown(Keys.Enter))
             {
                 failedScreen.Draw();
                 GameFiber.Yield();
             }
         });
         "Sexual Assault Case Update".DisplayNotification("Warrant ~r~denied~w~. \nCase has gone cold, better luck next time.", _cData.Number);
         SetScriptFinished();
     }
 }
Ejemplo n.º 2
0
    public void UpdateSelection()
    {
        CaseData openedCase = InvestigationManager.GetCase();

        if (InteractionManager.selection.type == SelectionType.CLUE)
        {
            if (!opened)
            {
                SetSelectionUIActive(true);
            }
            header.text    = "PISTA";
            objName.text   = openedCase.clues[InteractionManager.selection.clue].clueName;
            objIcon.sprite = openedCase.clues[InteractionManager.selection.clue].img;
        }
        else if (InteractionManager.selection.type == SelectionType.WITNESS)
        {
            if (!opened)
            {
                SetSelectionUIActive(true);
            }
            header.text    = "TESTEMUNHA";
            objName.text   = openedCase.witnesses[InteractionManager.selection.witness].witnessName;
            objIcon.sprite = openedCase.witnesses[InteractionManager.selection.witness].image;
        }
        else if (InteractionManager.selection.type == SelectionType.NONE)
        {
            if (opened)
            {
                SetSelectionUIActive(false);
            }
            //header.text = "SEM SELEÇÃO";
            //objName.text = "NONE";
            //objIcon.sprite = null;
        }
    }
Ejemplo n.º 3
0
    public static CaseData[][] EmptyMap(int sizeX, int sizeY)
    {
        var map = new CaseData[sizeY][];

        for (int i = 0; i < sizeY; i++)
        {
            map[i] = new CaseData[sizeX];
        }

        // Borders
        for (int i = 0; i < sizeY; i++)
        {
            map[i][0] = CaseData.BorderLeft;
        }
        for (int i = 0; i < sizeY; i++)
        {
            map[i][sizeX - 1] = CaseData.BorderRight;
        }
        for (int i = 0; i < sizeX; i++)
        {
            map[0][i] = CaseData.BorderBottom;
        }
        for (int i = 0; i < sizeX; i++)
        {
            map[sizeY - 1][i] = CaseData.BorderTop;
        }

        // Start
        map[sizeY / 2][0] = CaseData.Start;

        // Well
        map[sizeY / 2][sizeX - 2] = CaseData.Well;

        return(map);
    }
Ejemplo n.º 4
0
    public void SetData(CaseData caseData)
    {
        CaseData = caseData;

        if (caseData != null)
        {
            CaseName.text = caseData.Name;
        }

        var dataReader = SqliteManager.Instance.SelectParam("stage", "caseid", caseData.Id.ToString());

        var dataList = DataBase.GetDataList <StageData>(dataReader, "id", "name", "des", "caseid", "casetype");

        foreach (var data in dataList)
        {
            Debug.LogFormat("wtf datao tat ata tat {0}", JsonUtility.ToJson(data));
            var copyItem    = AssetManager.CreatePrefab("MyStageItem", StageRoot);
            var myStageItem = copyItem.GetComponent <MyStageItem>();
            if (myStageItem != null)
            {
                data.CaseName = caseData.Name;
                myStageItem.SetData(data);
            }
        }
    }
Ejemplo n.º 5
0
    public void OnNewClick()
    { // Lors d'un click sur une case
        var hoveredPersonnage = HoverManager.Instance.hoveredPersonnage;
        var currentPhase      = TurnManager.Instance.currentPhase;
        var currentPlayer     = TurnManager.Instance.currentPlayer;
        var actualAction      = GameManager.Instance.actualAction;
        var hoveredCase       = HoverManager.Instance.hoveredCase;
        var pathes            = MoveBehaviour.Instance.pathes;
        var selectedColor     = ColorManager.Instance.selectedColor;
        var moveColor         = ColorManager.Instance.moveColor;
        var caseColor         = ColorManager.Instance.caseColor;

        selectedLastCase = selectedCase;
        switch (currentPhase)
        {
        case (Phase.Placement):
            if (hoveredPersonnage != null &&
                SelectionManager.Instance.selectedCase == null &&
                hoveredPersonnage.owner == currentPlayer)
            {
                SelectPerso(hoveredCase, hoveredPersonnage, selectedColor, currentPhase, currentPlayer, actualAction);
            }

            break;

        case (Phase.Deplacement):
            if (hoveredPersonnage != null && hoveredPersonnage.owner == currentPlayer)         // changement de personnage selectionné
            {
                SelectPerso(hoveredCase, hoveredPersonnage, selectedColor, currentPhase, currentPlayer, actualAction);
            }
            break;
        }
    }
Ejemplo n.º 6
0
        public void GenerateSector(CaseData[][] map, int originSectorX, int originSectorY)
        {
            foreach (KeyValuePair <CaseData, int> pair in NumberByType)
            {
                CaseData type  = pair.Key;
                int      count = pair.Value;

                if (type == CaseData.EmptyCase)
                {
                    continue;
                }

                for (int i = 0; i < count; i++)
                {
                    int x, y;
                    int visitedCount = 0;

                    do
                    {
                        y = Random.Range(0, Height);
                        x = Random.Range(0, Width);
                        visitedCount++;

                        if (visitedCount >= Width * Height)
                        {
                            break;
                        }
                    }while (map[originSectorY + y][originSectorX + x] != CaseData.EmptyCase || !ConditionsByCaseType(map, type, originSectorX + x, originSectorY + y));

                    map[originSectorY + y][originSectorX + x] = type;
                }
            }
        }
Ejemplo n.º 7
0
        public ActionResult <CaseData> GetCases(string search = "", string sort = "", int pageNumber = 1, int pageSize = 10)
        {
            var caseDbSet = _context.cases;
            IQueryable <Cases> totalCases = caseDbSet.OrderBy(Case => Case.Id);
            string             _search    = search.ToLower();

            if (search != "")
            {
                totalCases = caseDbSet.Where(a => a.CaseNo.ToLower().Contains(_search) || a.CaseType.ToLower().Contains(_search) || a.FillingDate.ToString().Contains(_search) || a.Judge.ToLower().Contains(_search))
                             .OrderBy(Case => Case.Id);
            }

            if (sort != "")
            {
                totalCases = new SortCases().Sort(sort, totalCases);
            }

            var resultData = new CaseData
            {
                TotalCount = caseDbSet.Count(),
                Cases      = totalCases.Skip((pageNumber - 1) * pageSize).Take(pageSize).ToList()
            };

            return(resultData);
        }
        protected override bool Initialize()
        {
            "Initializing L.S. Noir Callout: Sexual Assault -- Stage 4c [Suspect Work]".AddLog();

            Xml = XDocument.Load(SaPath);

            _sData = LtFlash.Common.Serialization.Serializer.GetSelectedListElementFromXml <PedData>(Main.SDataPath,
                                                                                                     c => c.FirstOrDefault(s => s.Type == PedType.Suspect));
            _cData = LtFlash.Common.Serialization.Serializer.LoadItemFromXML <CaseData>(Main.CDataPath);

            "Sexual Assault Case Update".DisplayNotification(
                "Meet with your ~b~team~w~ to perform a raid on the ~r~suspect's~w~ work", _cData.Number);

            CreateStage();

            while (!_stageCreated)
            {
                GameFiber.Yield();
            }

            _position = GetLocation("Mortuary", "Meeting", "Blip").Spawn;
            _areaBlip = new Blip(_position)
            {
                Sprite = BlipSprite.GangAttackPackage,
                Color  = Color.DarkOrange,
                Name   = "Meet with SWAT Team"
            };

            ActivateStage(AwaitingArrival);
            return(true);
        }
    public override void Refresh()
    {
        var _params = GetParams();

        if (_params.Length >= 1)
        {
            CaseData = (CaseData)_params[0];
        }

        Utility.DestroyAllChildren(ItemRoot);

        var sqlStr     = "SELECT * FROM 'stage' where caseid = 0 and casetype = {0}";
        var dataReader = SqliteManager.Instance.SelectParam("stage", string.Format(sqlStr, CaseData.CaseType));
        var dataList   = DataBase.GetDataList <StageData>(dataReader, "id", "name", "des", "casetype");

        foreach (var stage in dataList)
        {
            var copyItem = AssetManager.CreatePrefab("TempStageChooseItem", ItemRoot);
            var item     = copyItem.GetComponent <TempStageChooseItem>();
            if (item != null)
            {
                stage.CaseId = CaseData.Id;
                item.SetData(stage, -1);
            }
        }

        //添加其他
        var otherItem = AssetManager.CreatePrefab("TempStageChooseItem", ItemRoot);
        var otherCell = otherItem.GetComponent <TempStageChooseItem>();

        if (otherCell != null)
        {
            otherCell.SetData(null, CaseData.Id);
        }
    }
Ejemplo n.º 10
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        CaseData  coll  = collision.transform.GetComponent <CaseData>();
        PersoData perso = collision.transform.GetComponent <PersoData>();

        if (coll != null)
        {
            if (coll.caseElement == Element.Feu)
            {
                AirScript.Instance.airEffect.SetActive(false);
                AirScript.Instance.fireAirEffect.transform.position = coll.transform.position;
                AirScript.Instance.fireAirEffect.SetActive(true);
                //     coll.changeElement(Element.Aucun);
                transform.parent.gameObject.SetActive(false);
            }
        }
        else if (perso != null)
        {
            if (targetPosition.node == null) // pas de target = pas de tp
            {
                return;
            }
            perso.transform.position = targetPosition.transform.position + new Vector3(0, GraphManager.Instance.getCaseOffset(perso.gameObject), 0);
            AirScript.Instance.airEffect.SetActive(false);
        }
    }
        protected override bool Initialize()
        {
            "Initializing L.S. Noir Callout: Sexual Assault -- Stage 2c [Police Station]".AddLog();
            _position = _station.Position;

            _stationBlip = new Blip(_position)
            {
                Sprite = BlipSprite.GangAttackPackage,
                Color  = Color.DarkOrange,
                Name   = "Visit Station"
            };
            _cData = Serializer.LoadItemFromXML <CaseData>(Main.CDataPath);
            $"Case number: {_cData.Number}".AddLog();

            "Sexual Assault Case Update".DisplayNotification("Visit a ~o~police station~w~ and view the SAJRS", _cData.Number);

            if (_station.Location == StationLocation.Downtown)
            {
                _markerPos.Add(new Vector3(434, -982, 31));
                _markerPos.Add(new Vector3(445, -988, 31));
                _markerPos.Add(new Vector3(447, -994, 31));
                _markerPos.Add(new Vector3(464, -985, 26));

                "MarkerRun".AddLog();
                ActivateStage(MarkerRun);
            }
            else
            {
                ActivateStage(CloseToComputer);
            }

            return(true);
        }
Ejemplo n.º 12
0
        public static IEnumerable <CaseData> GetAll()
        {
            var caseDatas = new List <CaseData>();

            using (var db = new SqliteConnection($"Filename={_dbpath}"))
            {
                db.Open();

                var query = "SELECT * FROM CaseTable";
                var cmd   = new SqliteCommand(query, db);

                var result = cmd.ExecuteReader();


                while (result.Read())
                {
                    var caseData = new CaseData(result.GetInt32(0), result.GetString(1), result.GetString(2), result.GetString(3));
                    caseDatas.Add(caseData);
                }

                db.Close();

                return(caseDatas);
            }
        }
        /**
         * Creates a case data from an IWebElement representing a row in the Case List table
         */
        private CaseData CreateCaseData(IWebElement row)
        {
            //TestsLogger.Debug("Creating bean for row " +row.Text);

            //TODO load correct link once the feature is implemented
            CaseData caseData = new CaseData();

            caseData.ViewLink = "";
            //caseData.Number = row.FindElement(By.CssSelector("td.au-target.caseNumber > a")).Text;
            //caseData.Name = row.FindElement(By.CssSelector("td.au-target.caseName > a")).Text;
            //caseData.Status = row.FindElement(By.CssSelector("td.au-target.status > p")).Text;
            //caseData.Type = row.FindElement(By.CssSelector("td.au-target.type > p")).Text;
            //caseData.OpenDate = row.FindElement(By.CssSelector("td.au-target.openStatusDate > p")).Text;
            //caseData.EstimatedDistributionDate = row.FindElement(By.CssSelector("td.distributionDate > p")).Text;
            //caseData.Balance = row.FindElement(By.CssSelector("td.au-target.balance > p")).Text;

            //Stopwatch stopWatch = new Stopwatch();
            //stopWatch.Start();
            caseData.Number   = row.FindElement(caseRowCaseNumberColumnLocator).Text;
            caseData.Name     = row.FindElement(caseRowCaseNameColumnLocator).Text;
            caseData.Status   = row.FindElement(caseRowCaseStatusColumnLocator).Text;
            caseData.Type     = row.FindElement(caseRowCaseTypeColumnLocator).Text;
            caseData.OpenDate = row.FindElement(caseRowOpenDateColumnLocator).Text;
            caseData.EstimatedDistributionDate = row.FindElement(caseRowEstDistDateColumnLocator).Text;
            caseData.Balance = row.FindElement(caseRowBalanceColumnLocator).Text;
            //stopWatch.Stop();
            //TestsLogger.Debug("Elapsed time: " + stopWatch.Elapsed);
            //TestsLogger.Debug("Creating bean for row ." + row.Text);
            return(caseData);
        }
Ejemplo n.º 14
0
    public void SetObject(WitnessData witness)
    {
        CaseData openedCase = InvestigationManager.GetCase();

        GetComponent <CanvasGroup>().alpha = 1;
        string fullDescription = "";

        fullDescription += "IDADE: " + witness.age + "\n";
        fullDescription += "PROFISSÃO: " + witness.job + "\n";
        fullDescription += "RUMORES:";
        Files files = Files.Load();

        int witnessIndex = openedCase.GetWitnessIndexFromData(witness);

        foreach (Rumor r in files.GetCaseStatus().rumors)
        {
            if (r.target == witnessIndex)
            {
                RumorData rd = openedCase.GetRumorData(r);
                print(r.from + "/" + r.target);
                fullDescription += "\n" + "* " + rd.from.witnessName + ": " + rd.description;
            }
        }
        description.text = fullDescription;
        title.text       = witness.witnessName;
        icon.sprite      = witness.image;
    }
        protected override bool Initialize()
        {
            "Initializing L.S. Noir Callout: Sexual Assault -- Stage 4a [Suspect Home]".AddLog();

            var spawn_scene = LoadDict();

            var random = Rand.RandomNumber(spawn_scene.Count);

            _scenario = spawn_scene.Values.ToArray()[random];
            _oneSpawn = spawn_scene.Keys.ToArray()[random];
            _areaBlip = new Blip(_oneSpawn.Spawn)
            {
                Sprite = BlipSprite.GangAttackPackage,
                Color  = Color.DarkOrange,
                Name   = "Interrogate Suspect"
            };

            _cData = Serializer.LoadItemFromXML <CaseData>(Main.CDataPath);

            _sData = Serializer.GetSelectedListElementFromXml <PedData>(Main.SDataPath,
                                                                        s => s.FirstOrDefault <PedData>(c => String.Equals(c.Name, _cData.CurrentSuspect, StringComparison.CurrentCultureIgnoreCase)));

            "Sexual Assault Case Update".DisplayNotification("Speak to suspect", _cData.Number);


            return(true);
        }
Ejemplo n.º 16
0
        protected override void FillActivityWithCaseData(Activity activity, CaseData data)
        {
            base.FillActivityWithCaseData(activity, data);
            var replyPart = GetReplyPartFromParentActivity(data.ParentActivityId);

            activity.Body = activity.Body + replyPart;
        }
    public override void Refresh()
    {
        var _params = GetParams();

        if (_params.Length >= 1)
        {
            CaseData = (CaseData)_params[0];
        }

        Utility.DestroyAllChildren(ItemRoot);

        CaseName.text = CaseData.Name;

        var dataReader = SqliteManager.Instance.SelectParam("stage", "caseid", CaseData.Id.ToString());
        var dataList   = DataBase.GetDataList <StageData>(dataReader, "id", "name", "des", "caseid", "casetype");

        foreach (var data in dataList)
        {
            var castItem = AssetManager.CreatePrefab("StageItem", ItemRoot);

            var item = castItem.GetComponent <StageItem>();
            if (item != null)
            {
                item.SetData(data);
            }
        }
    }
Ejemplo n.º 18
0
    /*
     * 创建日志文件
     * **/
    public static void CreateLogListFile()
    {
        string username = GlobalData.username; //赋值全局的用户名

        if (username != null)
        {
            if (username.Trim() == "")
            {
                Debug.Log("[InitLogInfo] Username was Empty!");
                username = "******";
            }
        }
        string fileName = username + DateTime.Now.Ticks + ".xml";

        Debug.Log("[文件名] " + fileName + "[路径名] " + Application.streamingAssetsPath + "/LogCenter/" + username + "/");
        Debug.Log(Application.streamingAssetsPath + "/LogCenter/" + username + "/");
        CreateLogListFile(Application.streamingAssetsPath + "/LogCenter/" + username + "/", fileName);
        LogListInfo logInfo     = new LogListInfo();
        CaseData    currentCase = GlobalData.selectCase;

        logInfo.CaseName  = currentCase.CaseTitle;
        logInfo.Name      = GlobalData.name;
        logInfo.Username  = GlobalData.username;
        logInfo.StudentId = GlobalData.stuID;
        logInfo.DateTime  = DateTime.Now;
        initListFileNode(logInfo);
    }
        private static string ConvertEnumToReadableString(CaseData.LastStage stage, CaseData caseData)
        {
            switch (stage)
            {
            case CaseData.LastStage.CSI:
                return("Crime Scene Investigation");

            case CaseData.LastStage.Hospital:
                return("Visited Hospital");

            case CaseData.LastStage.MedicalExaminer:
                return("Retreived Medical Examiner Report");

            case CaseData.LastStage.Station:
                return("Viewed SAJRS");

            case CaseData.LastStage.SuspectHome:
                return("Interrogated Suspect");

            case CaseData.LastStage.VictimFamily:
                return("Met with Victim's Family");

            case CaseData.LastStage.Wait:
                return("In-between Stage");

            default:
                return("No case found");
            }
        }
Ejemplo n.º 20
0
    public void Deselect(Phase currentPhase, Player currentPlayer)
    {
        MoveBehaviour.Instance.HidePath();
        MoveBehaviour.Instance.pathes.Clear();
        GameManager.Instance.actualAction = PersoAction.isSelected;
        CaseManager.Instance.StartCoroutine("ShowActions");

        if (selectedLastCase != null)
        {
            if (currentPhase == Phase.Placement)
            {
                selectedLastCase.ChangeColor(Statut.None, Statut.isSelected);
            }
            else
            {
                selectedLastCase.ChangeColor(Statut.None, Statut.isSelected);
            }
        }
        selectedPersonnage = null;
        selectedCase       = null;

        if (currentPhase == Phase.Placement)
        {
            PlacementBehaviour.Instance.NextToPlace(TurnManager.Instance.currentPhase, TurnManager.Instance.currentPlayer);
        }
    }
Ejemplo n.º 21
0
    public void ListAllCollectedClues(ClueSpaceUI caller)
    {
        CaseData openedCase = InvestigationManager.GetCase();

        Open();
        Erase();
        Files files = Files.Load();

        this.caller = caller;
        var l = files.GetCaseStatus().clues;

        for (int i = 0; i < l.Count; i++)
        {
            var      clue = l[i];
            ClueData cd   = openedCase.GetClueData(clue);
            var      go   = Instantiate(cluePrefab, root);
            go.GetComponent <ClueForListUI>().SetInfo(cd);
            go.GetComponent <Button>().onClick.AddListener(
                delegate {
                ClueData c = cd;
                Choose(c);
            });
            if (i == 0)
            {
                go.GetComponent <Button>().Select();
            }
        }
    }
Ejemplo n.º 22
0
        private bool ConditionsByCaseType(CaseData[][] map, CaseData type, int x, int y)
        {
            switch (type)
            {
            case CaseData.Obstacle:

                for (int i = -1; i <= 1; i++)
                {
                    for (int j = -1; j <= 1; j++)
                    {
                        if (y + i >= 0 && x + j >= 0 && y + i < map.Length && x + j < map[0].Length)
                        {
                            if (map[y + i][x + j] == CaseData.Obstacle)
                            {
                                return(false);
                            }
                        }
                    }
                }

                break;
            }

            return(true);
        }
Ejemplo n.º 23
0
        /// <summary>
        /// Gets the Chat Update data.
        /// </summary>
        /// <param name="emailData"></param>
        /// <param name="callType"></param>
        /// <param name="duration"></param>
        /// <param name="emailContent"></param>
        /// <returns></returns>
        public CaseData GetCaseEmailUpdateData(IXNCustomData emailData, SFDCCallType callType, string eventName)
        {
            CaseData cases = new CaseData();

            try
            {
                this._logger.Info("GetCaseOutboundEmailUpdateData :  Reading Account Update Data.....");

                if (emailData != null)
                {
                    #region Collect Case Data

                    cases.ObjectName = _caseEmailOptions.ObjectName;
                    if (callType == SFDCCallType.InboundEmail || callType == SFDCCallType.InboundEmailPulled)
                    {
                        if (_caseEmailOptions.InboundCanUpdateLog)
                        {
                            cases.UpdateActivityLog     = true;
                            cases.UpdateActivityLogData = this._sfdcUtility.GetUpdateActivityLogData(this._caseEmailLogOptions, null, callType, emailData.Duration, emailData: emailData);
                            if (!string.IsNullOrWhiteSpace(_caseEmailOptions.EmailAppendActivityLogEventNames) && _caseEmailOptions.EmailAppendActivityLogEventNames.Contains(eventName))
                            {
                                cases.AppendActivityLogData = this._sfdcUtility.GetUpdateActivityLogData(this._caseEmailLogOptions, null, callType, emailData.Duration, emailData: emailData, isAppendLogData: true);
                            }
                        }
                    }
                    else if (callType == SFDCCallType.OutboundEmailFailure || callType == SFDCCallType.OutboundEmailSuccess || callType == SFDCCallType.OutboundEmailPulled)
                    {
                        if (_caseEmailOptions.OutboundCanUpdateLog)
                        {
                            cases.UpdateActivityLog     = true;
                            cases.UpdateActivityLogData = this._sfdcUtility.GetUpdateActivityLogData(this._caseEmailLogOptions, null, callType, emailData.Duration, emailData: emailData);
                            if (!string.IsNullOrWhiteSpace(_caseEmailOptions.EmailAppendActivityLogEventNames) && _caseEmailOptions.EmailAppendActivityLogEventNames.Contains(eventName))
                            {
                                cases.AppendActivityLogData = this._sfdcUtility.GetUpdateActivityLogData(this._caseEmailLogOptions, null, callType, emailData.Duration, emailData: emailData, isAppendLogData: true);
                            }
                        }
                    }
                    //update account record fields
                    cases.UpdateRecordFields = _caseEmailOptions.CanUpdateRecordData;
                    cases.NoRecordFound      = SFDCObjectHelper.GetNoRecordFoundAction(callType, _caseEmailOptions);
                    if (cases.NoRecordFound.Equals("createnew") && this._caseEmailRecordConfig != null)
                    {
                        if (_caseEmailOptions.CanUpdateRecordData)
                        {
                            cases.UpdateRecordFieldsData = this._sfdcUtility.GetUpdateActivityLogData(this._caseEmailRecordConfig, null, callType, emailData.Duration, emailData: emailData);
                        }
                    }

                    #endregion Collect Case Data

                    return(cases);
                }
            }
            catch (Exception generalException)
            {
                this._logger.Error("GetCaseOutboundEmailUpdateData : Error occurred while reading Account Data : " + generalException.ToString());
                return(cases);
            }
            return(null);
        }
Ejemplo n.º 24
0
        /// <summary>
        /// Gets chat Update Data
        /// </summary>
        /// <param name="message"></param>
        /// <param name="callType"></param>
        /// <param name="duration"></param>
        /// <param name="chatContent"></param>
        /// <returns></returns>
        public ICase GetCaseChatUpdateData(IMessage message, SFDCCallType callType, string duration, string chatContent)
        {
            try
            {
                this.logger.Info("GetCaseChatUpdateData :  Reading Case Update Data.....");
                this.logger.Info("GetCaseChatUpdateData :  Event Name : " + message.Name);
                dynamic popupEvent = Convert.ChangeType(message, message.GetType());
                if (popupEvent != null)
                {
                    ICase cases = new CaseData();

                    #region Collect Lead Data

                    cases.ObjectName = CaseChatOptions.ObjectName;
                    if (callType == SFDCCallType.InboundChat)
                    {
                        if (CaseChatOptions.InboundCanUpdateLog)
                        {
                            cases.UpdateActivityLog     = true;
                            cases.UpdateActivityLogData = this.sfdcObject.GetChatUpdateActivityLog(this.CaseChatLogOptions, popupEvent, callType, duration, chatContent);
                        }
                    }
                    else
                    if (callType == SFDCCallType.ConsultChatReceived)
                    {
                        if (CaseChatOptions.ConsultCanUpdateLog)
                        {
                            cases.UpdateActivityLog     = true;
                            cases.UpdateActivityLogData = this.sfdcObject.GetChatUpdateActivityLog(this.CaseChatLogOptions, popupEvent, callType, duration, chatContent);
                        }
                    }
                    else if (callType == SFDCCallType.ConsultChatSuccess || callType == SFDCCallType.ConsultChatFailure)
                    {
                        if (CaseChatOptions.ConsultCanUpdateLog)
                        {
                            cases.UpdateActivityLog     = true;
                            cases.UpdateActivityLogData = this.sfdcObject.GetChatUpdateActivityLog(this.CaseChatLogOptions, popupEvent, callType, duration, chatContent);
                        }
                    }
                    //update case record fields
                    cases.UpdateRecordFields = CaseChatOptions.CanUpdateRecordData;
                    if (GetNoRecordFoundAction(callType, CaseChatOptions).Equals("createnew") && this.CaseRecordConfig != null)
                    {
                        if (CaseChatOptions.CanUpdateRecordData)
                        {
                            cases.UpdateRecordFieldsData = this.sfdcObject.GetChatUpdateActivityLog(this.CaseRecordConfig, popupEvent, callType, duration, chatContent);
                        }
                    }

                    #endregion Collect Lead Data

                    return(cases);
                }
            }
            catch (Exception generalException)
            {
                this.logger.Error("GetCaseChatUpdateData : Error occurred while reading Case Data : " + generalException.ToString());
            }
            return(null);
        }
Ejemplo n.º 25
0
 public HoverArgs(CaseData hoveredCase, PersoData hoveredPersonnage, PathfindingCase Pathfinding, BallonData hoveredBallon)
 {
     this.hoveredCase       = hoveredCase;
     this.hoveredPersonnage = hoveredPersonnage;
     this.Pathfinding       = Pathfinding;
     this.hoveredBallon     = hoveredBallon;
 }
        public void WhenIClickOnCaseNameLinkOfTheFirstCase()
        {
            CaseData firstCase = caseListPage.GetCaseRowByPosition(1);

            ScenarioContext.Current.Add("CaseData", firstCase);
            AddDataToScenarioContextOverridingExistentKey("Case General", caseListPage.SelectCaseNameLinkByRowPosition(1));
        }
Ejemplo n.º 27
0
    private void SetReportedData(CaseData data)
    {
        data.SetData(this);

        reportedTarget = null;
        ai.OnCaseChanged(new CaseChangedEventArgs(null, Case.AVAILABLE));
    }
Ejemplo n.º 28
0
        internal static void SecurityCameraStart(CaseData data)
        {
            IsRunning = true;
            GameFiber.StartNew(delegate
            {
                Game.LogTrivial("Starting security camera playback");

                Game.IsPaused = false;

                _playerPos = Game.LocalPlayer.Character.Position;
                _targetPos = data.SusTarget.Position;

                FadeScreen(true);

                _gameCam        = CreateGameCam();
                _gameCam.Active = false;
                _secCam         = CreateSecurityCamera(data);
                _secCam.Active  = false;

                Game.LocalPlayer.Character.IsInvincible     = true;
                Game.LocalPlayer.Character.Position         = new Vector3(data.SecCamSpawn.Position.X, data.SecCamSpawn.Position.Y, data.SecCamSpawn.Position.Z + 3f);
                Game.LocalPlayer.Character.IsPositionFrozen = true;

                _secTime = new DateTime(6, 5, 11, 23, 15, 50);

                SetUpSecCamFootage(data);
            });
        }
Ejemplo n.º 29
0
    public override void OnShow()
    {
        CaseData caseData = CaseManager.Instance.CurrentCaseData;

        InitToggles(caseData);
        InitButton(caseData);
        InitText(caseData);
    }
Ejemplo n.º 30
0
    public override void OnShow()
    {
        CaseData     caseData     = CaseManager.Instance.CurrentCaseData;
        CaseProgress caseProgress = CaseManager.Instance.CurrentCaseProgress;

        InitDeathLocation(caseData, caseProgress);
        InitMurderWeapon(caseData, caseProgress);
    }
Ejemplo n.º 31
0
    public static CaseData[][] EmptyMap(int sizeX, int sizeY)
    {
        var map = new CaseData[sizeY][];
        for (int i = 0; i < sizeY; i++)
            map[i] = new CaseData[sizeX];

        // Borders
        for (int i = 0; i < sizeY; i++)
            map[i][0] = CaseData.BorderLeft;
        for (int i = 0; i < sizeY; i++)
            map[i][sizeX - 1] = CaseData.BorderRight;
        for (int i = 0; i < sizeX; i++)
            map[0][i] = CaseData.BorderBottom;
        for (int i = 0; i < sizeX; i++)
            map[sizeY - 1][i] = CaseData.BorderTop;

        // Start
        map[sizeY / 2][0] = CaseData.Start;

        // Well
        map[sizeY / 2][sizeX - 2] = CaseData.Well;

        return map;
    }
Ejemplo n.º 32
0
        private bool ConditionsByCaseType(CaseData[][] map, CaseData type, int x, int y)
        {
            switch (type)
            {
                case CaseData.Obstacle:

                    for (int i = -1; i <= 1 ; i++)
                        for (int j = -1; j <= 1; j++)
                            if (y + i >= 0 && x + j >= 0 && y + i < map.Length && x + j < map[0].Length)
                                if (map[y + i][x + j] == CaseData.Obstacle)
                                    return false;

                    break;
            }

            return true;
        }
Ejemplo n.º 33
0
        public void GenerateSector(CaseData[][] map, int originSectorX, int originSectorY)
        {
            foreach (KeyValuePair<CaseData, int> pair in NumberByType)
            {
                CaseData type = pair.Key;
                int count = pair.Value;

                if (type == CaseData.EmptyCase)
                    continue;

                for (int i = 0; i < count; i++)
                {
                    int x, y;
                    int visitedCount = 0;

                    do
                    {
                        y = Random.Range(0, Height);
                        x = Random.Range(0, Width);
                        visitedCount++;

                        if (visitedCount >= Width * Height)
                            break;
                    }
                    while (map[originSectorY + y][originSectorX + x] != CaseData.EmptyCase || !ConditionsByCaseType(map, type, originSectorX + x, originSectorY + y));

                    map[originSectorY + y][originSectorX + x] = type;
                }
            }
        }