Exemplo n.º 1
0
    /*public Photo(ActivityID para_photoAreaTypeID,
                 int para_photoAreaBackgroundID,
                 PhotoCharacterElement para_questGiverElement,
                 PhotoCharacterElement para_activityOwnerElement,
                 PlayerAvatarSettings para_playerAvSettings,
                 int para_playerAvPoseID,
                 string para_boardText,
                 float[] para_boardNormBounds)
    {

        photoAreaTypeID = (int)para_photoAreaTypeID;

        photoAreaBackgroundID = para_photoAreaBackgroundID;
        questGiverElement = para_questGiverElement;
        activityOwnerElement = para_activityOwnerElement;
        playerAvSettings = para_playerAvSettings;
        playerAvPoseID = para_playerAvPoseID;
        boardText = para_boardText;
        boardNormBounds = para_boardNormBounds;

        dateNTimeStamp = ""+System.DateTime.Now;//+" "+System.DateTime.Now.TimeOfDay;
    }*/
    public Photo(ApplicationID para_photoAreaTypeID,
	             int para_photoAreaBackgroundID,
	             PhotoCharacterElement para_questGiverElement,
	             PhotoCharacterElement para_activityOwnerElement,
	             PlayerAvatarSettings para_playerAvSettings,
	             int para_playerAvPoseID,
	             string para_boardText,
	             float[] para_boardNormBounds)
    {
        //ApplicationID is converted to backgroundIDs for consistency with old save files
        switch(para_photoAreaTypeID){
            case ApplicationID.SERENADE_HERO: photoAreaTypeID=0;break;
            case ApplicationID.DROP_CHOPS: photoAreaTypeID=1;break;
            case ApplicationID.MOVING_PATHWAYS: photoAreaTypeID=2;break;
            case ApplicationID.HARVEST: photoAreaTypeID=3;break;
            case ApplicationID.WHAK_A_MOLE: photoAreaTypeID=4;break;
            case ApplicationID.MAIL_SORTER: photoAreaTypeID=5;break;
            case ApplicationID.EYE_EXAM: photoAreaTypeID=6;break;
            case ApplicationID.TRAIN_DISPATCHER: photoAreaTypeID=7;break;
            case ApplicationID.ENDLESS_RUNNER: photoAreaTypeID=8;break;
            default: photoAreaTypeID=-1;break;
        }

        photoAreaBackgroundID = para_photoAreaBackgroundID;
        questGiverElement = para_questGiverElement;
        activityOwnerElement = para_activityOwnerElement;
        playerAvSettings = para_playerAvSettings;
        playerAvPoseID = para_playerAvPoseID;
        boardText = para_boardText;
        boardNormBounds = para_boardNormBounds;

        dateNTimeStamp = ""+System.DateTime.Now;//+" "+System.DateTime.Now.TimeOfDay;
    }
Exemplo n.º 2
0
        private HttpClient CreateClient(string content)
        {
            var client = new HttpClient()
            {
                BaseAddress = new Uri(OASISServiceURL)
            };
            var thisepoch = (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;
            var reqsecret = "";

            using (HMACSHA256 hmac = new HMACSHA256(Encoding.UTF8.GetBytes(APIKey)))
            {
                var hashData = Encoding.UTF8.GetBytes(string.Format("{0}:{1}:{2}:{3}{4}"
                                                                    , ApplicationID
                                                                    , thisepoch
                                                                    , ApplicationKey
                                                                    , content
                                                                    , (!string.IsNullOrEmpty(RemoteIP) ? ":" + RemoteIP : "")));
                var hmacHash = hmac.ComputeHash(hashData);
                reqsecret = Convert.ToBase64String(hmacHash);
            }

            client.DefaultRequestHeaders.Add("X-OASIS-EPOCH", thisepoch.ToString());
            client.DefaultRequestHeaders.Add("X-OASIS-APPID", ApplicationID.ToString());
            client.DefaultRequestHeaders.Add("X-OASIS-REQSECRET", reqsecret);
            if (!string.IsNullOrEmpty(RemoteIP))
            {
                client.DefaultRequestHeaders.Add("X-OASIS-IP", RemoteIP);
            }

            return(client);
        }
Exemplo n.º 3
0
    public ActivitySessionMetaData(string para_characterHelperName,
	                               ApplicationID para_acID,
	                               string para_languageArea,
	                               string para_difficulty,
	                               int para_questGiverID,
	                               int para_langAreaID,
	                               int para_diffIndexForLangArea,
	                               Mode al,
	                               string ld)
    {
        launcherDetails = ld;
        activityLauncher = al;
        acID = para_acID;
        characterHelperName = para_characterHelperName;
        languageArea = para_languageArea;
        difficulty = para_difficulty;

        questGiverID = para_questGiverID;
        langAreaID = para_langAreaID;
        diffIndexForLangArea = para_diffIndexForLangArea;

        progress = 0;
        startTimestamp = System.DateTime.Now;
        endTimestamp = System.DateTime.Now;
    }
Exemplo n.º 4
0
 /// <summary>
 /// 页面加载
 /// </summary>
 public override void RenderPage()
 {
     if (ApplicationID.IsNoNull())
     {
         objloger_application = objLogRule.loger_application.FirstOrDefault(s => s.ApplicationID == ApplicationID);
         if (CheckEditObjectIsNull(objloger_application))
         {
             return;
         }
         ///是否自动释放
         chkIsDispose.Checked = objloger_application.IsDispose;
         chkIsNotice.Checked  = objloger_application.IsNotice;
         dropIntervalMinutes.SetSelectValue(objloger_application.IntervalMinutes);
         chkNoticeCategory.SetSelectValue(objloger_application.NoticeCategory);
         Page.DataBind();
     }
     else
     {
         txtLogerCount.Text                = "10";
         txtNoticeInterval.Text            = "3";
         txtNoticeSleep.Text               = "10";
         dropIntervalMinutes.SelectedValue = "5";
         txtMinutesMaxCount.Text           = "30";
         chkNoticeCategory.SetSelectValue("ExceptionError");
     }
 }
Exemplo n.º 5
0
    protected override void CurrentTool_ItemCommand(object sender, WTF.Controls.MyCommandEventArgs e)
    {
        switch (e.CommandName)
        {
        case "Remove":
            objLogRule.loger_loging.DeleteDataPrimaryKey(gdvContent.SelectedRowDataKeys);
            RenderPage();
            break;

        case "LogClear":

            Redirect("LogClear.aspx?ApplicationID=" + ApplicationID.ToString());
            break;

        case "SaveSet":
            Redirect("WriterTypeEdit.aspx?ApplicationID=" + ApplicationID.ToString());
            break;

        case "LogStat":
            Redirect("LogStatList.aspx?ApplicationID=" + ApplicationID.ToString());
            break;

        case "Search":
            SearchCondition();
            break;
        }
    }
Exemplo n.º 6
0
    public void init(int para_questGiverNpcID,
	                 int para_receiverNpcID,
	                 ApplicationID para_destActivityIndex)
    {
        Transform oldQuestGiverHead = transform.FindChild("QuestGiverSmallHead");
        Transform oldReceiverHead = transform.FindChild("ReceiverSmallHead");
        Transform oldInventoryItem = transform.FindChild("InventoryItem");
        if(oldQuestGiverHead != null) { Destroy(oldQuestGiverHead.gameObject); }
        if(oldReceiverHead != null) { Destroy(oldReceiverHead.gameObject); }
        if(oldInventoryItem != null) { Destroy(oldInventoryItem.gameObject); }

        GameObject questGiverHeadGuide = transform.FindChild("QuestGiverHeadGuide").gameObject;
        GameObject receiverHeadGuide = transform.FindChild("ReceiverHeadGuide").gameObject;
        GameObject inventoryItemArea = transform.FindChild("InventoryItemArea").gameObject;

        UnityEngine.Debug.Log("From "+para_questGiverNpcID+" to "+ para_receiverNpcID+" at "+para_destActivityIndex);
        Transform questGiverSmallHeadPrefab = Resources.Load<Transform>("Prefabs/Ghostbook/SmallHeads/SmallHeads_"+para_questGiverNpcID);
        Transform receiverSmallHeadPrefab = Resources.Load<Transform>("Prefabs/Ghostbook/SmallHeads/SmallHeads_"+para_receiverNpcID);
        Transform inventoryItemPrefab = Resources.Load<Transform>("Prefabs/Ghostbook/ActivitySymbols/SmallSymbols_"+para_destActivityIndex);

        bool[] upAxisArr = new bool[]{false,true,false};
        GameObject nwQuestGiverSmallHead = WorldSpawnHelper.initObjWithinWorldBounds(questGiverSmallHeadPrefab,"QuestGiverSmallHead",questGiverHeadGuide.renderer.bounds,upAxisArr);
        GameObject nwReceiverSmallHead = WorldSpawnHelper.initObjWithinWorldBounds(receiverSmallHeadPrefab,"ReceiverSmallHead",receiverHeadGuide.renderer.bounds,upAxisArr);
        GameObject nwInventoryItem = WorldSpawnHelper.initObjWithinWorldBounds(inventoryItemPrefab,"InventoryItem",inventoryItemArea.renderer.bounds,upAxisArr);

        nwQuestGiverSmallHead.transform.parent = transform;
        nwReceiverSmallHead.transform.parent = transform;
        nwInventoryItem.transform.parent = transform;

        nwQuestGiverSmallHead.renderer.sortingOrder = 135;
        nwReceiverSmallHead.renderer.sortingOrder = 135;
        nwInventoryItem.renderer.sortingOrder = 135;

        Destroy(this);
    }
Exemplo n.º 7
0
    // The job of the PhotoRecorder is to create parameters for Photo objects.
    // Rendering of Photo objects can then be performed by PhotoVisualiser.
    public Photo buildNewPhotoData(int para_questGiverID,
	                                 				int para_activityOwnerID,
	                                 				ApplicationID para_activityKey,
	                                 				int para_langAreaID,
	                                 				int para_difficultyIndex)
    {
        // The photo will fall under the quest giver's album.
        GhostbookManagerLight gbMang = GhostbookManagerLight.getInstance();
        //IGBDifficultyReference diffRefMat = gbMang.getDifficultyReferenceMaterial();

        // Extract player avatar details.
        GameObject poRef = PersistentObjMang.getInstance();
        DatastoreScript ds = poRef.GetComponent<DatastoreScript>();
        PlayerAvatarSettings playerAvSettings = (PlayerAvatarSettings) ds.getData("PlayerAvatarSettings");

        // Add background randomisation when assets become available.
        int backgroundID = Random.Range(0,2);

        // Get difficulty name.
        string diffName = gbMang.createDifficultyShortDescription(para_langAreaID,para_difficultyIndex);
        if(diffName == null) { diffName = "N/A"; }

        Photo nwPhoto = new Photo(para_activityKey,
                                  				  backgroundID,
                                  				  new PhotoCharacterElement(para_questGiverID,Random.Range(1,4),null),
                                                  new PhotoCharacterElement(para_activityOwnerID,Random.Range(1,4),null),
                                                  playerAvSettings,
                                  				  Random.Range(1,4),
                                                  diffName,
                                                  null);

        return nwPhoto;
    }
    public EnterActivityDiagCommand(string para_commandName,
	                                ApplicationID para_activityKey,
	                                				   bool para_needsContinueBtn,
	                                				   bool para_needsQuitBtn)
        : base(para_commandName,DialogueViewType.ENTER_ACTIVITY,para_needsContinueBtn,para_needsQuitBtn)
    {
        activityKey = para_activityKey;
    }
    public void endActivity(int difficulty,int category, ApplicationID activity,string level)
    {
        UserLogNoTimestamp log = new UserLogNoTimestamp(username,activity,Tag.APP_SESSION_END);
        log.setDifficulty(difficulty,category);
        log.setMode(Mode.ADVENTURE);
        log.setLevel(level);

        server.logData(log);
    }
Exemplo n.º 10
0
    public ApplicationID[] getActivities()
    {
        ApplicationID[] output = new ApplicationID[activity.Length];

        for (int i=0;i<output.Length;i++){
            output[i] = (ApplicationID) System.Enum.Parse(typeof(ApplicationID), activity[i]);
        }
        return output;
    }
Exemplo n.º 11
0
 public UserLog(string _username, ApplicationID _applicationID, Tag _tag)
 {
     username = _username;
     applicationId = _applicationID.ToString();
     tag =_tag.ToString();
     timestamp = (long)UnityEngine.Time.realtimeSinceStartup;//System.DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fff");
     //		timeServer = System.DateTime.Now.ToString("yyyy-MM-ddTHH:mm:sszzz");
     //timestamp = System.BitConverter.GetBytes(System.DateTime.Now.ToBinary());
     //timestamp = System.DateTime.Now.ToBinary();
 }
Exemplo n.º 12
0
        public byte[] ToBytes()
        {
            List <byte> buffer = new List <byte>(BYTES_LENGTH);

            buffer.AddRange(ApplicationID.ToByteArray());
            buffer.AddRange(BitConverter.GetBytes(CodeType));
            buffer.AddRange(BitConverter.GetBytes(0));// 占位字节,用于确保是16字节的倍数
            buffer.AddRange(BitConverter.GetBytes(Position));
            return(buffer.ToArray());
        }
Exemplo n.º 13
0
    public WalkToActivityDiagCommand(string para_commandName,
														  int para_activityMasterOwner_id,
	                                 ApplicationID para_activityKey,
	                                 					  bool para_needsContinueBtn,
	                                 					  bool para_needsQuitBtn)
        : base(para_commandName,DialogueViewType.WALK_TO_ACTIVITY,para_needsContinueBtn,para_needsQuitBtn)
    {
        activityMasterOwner_id = para_activityMasterOwner_id;
        activityKey = para_activityKey;
    }
Exemplo n.º 14
0
    public void addEvent(int para_questGiverCharID,
	                     int para_questReceiverCharID,
	                     ApplicationID para_activityID,
	                     Encounter para_encFullData)
    {
        //UnityEngine.Debug.LogWarning("ActivityID deprecated");
        if(availableEvents == null) {
            availableEvents = new List<EventSlot>(); }
        availableEvents.Add(new EventSlot(nxtAvailableID,para_questGiverCharID,para_questReceiverCharID,para_activityID,para_encFullData));
        nxtAvailableID++;
    }
    public void activityProposed(int difficulty,int category, ApplicationID activity,string level)
    {
        //	Debug.Log("ACTIVITY PROPOSED: "+activity+" "+level);

        UserLogNoTimestamp log = new UserLogNoTimestamp(username,activity,Tag.ACTIVITY_PROPOSED);
        log.setDifficulty(difficulty,category);
        log.setMode(Mode.PLAY);
        log.setLevel(level);

        server.logData(log);
    }
Exemplo n.º 16
0
    /*public NIPastActivity(int para_newsID, int para_newsType, string para_dateTimestamp,
                          ActivityID para_acPlayed, int para_langArea, int para_difficulty, int para_questGiverID,string level,string date)
        :base(para_newsID,para_newsType,para_dateTimestamp,"")
    {

        UnityEngine.Debug.LogError("Deprecated");

        acPlayed = para_acPlayed;
        langArea = para_langArea;
        difficulty = para_difficulty;
        questGiverID = para_questGiverID;
        newsText = null;
        level = level;
        date = date;
    }*/
    public NIPastActivity(int para_newsID, int para_newsType, string para_dateTimestamp,
									ApplicationID para_acPlayed, int para_langArea, int para_difficulty, int para_questGiverID,string level,string date)
        : base(para_newsID,para_newsType,para_dateTimestamp,"")
    {
        this.acPlayedCorrect = para_acPlayed;
        this.langArea = para_langArea;
        this.difficulty = para_difficulty;
        this.questGiverID = para_questGiverID;
        this.newsText = null;
        this.level = level;
        this.date = date;
    }
Exemplo n.º 17
0
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         int hash = 17;
         // Suitable nullity checks etc, of course :)
         hash = hash * 23 + IPAddress.GetHashCode();
         hash = hash * 23 + Port.GetHashCode();
         hash = hash * 23 + CertificateHash.GetHashCode();
         hash = hash * 23 + ApplicationID.GetHashCode();
         return(hash);
     }
 }
Exemplo n.º 18
0
    /*public EventSlot(int para_questID,
                     int para_questGiverCharID,
                     ActivityID para_acID,
                     Encounter para_enc)
    {
        questID = para_questID;
        questGiverCharID = para_questGiverCharID;
        acID = para_acID;
        enc = para_enc;
    }*/
    public EventSlot(int para_questID,
	                 int para_questGiverCharID,
	                 int para_questReceiverCharID,

	                 ApplicationID para_acID,
	                 Encounter para_enc)
    {
        questID = para_questID;
        questGiverCharID = para_questGiverCharID;
        questReceiverCharID = para_questReceiverCharID;
        //acID = null;
        enc = para_enc;
    }
Exemplo n.º 19
0
    public Encounter(ApplicationID _location,
	                 string _level,
	                 int _languageArea,
	                 int _difficulty,
	                 string _details,
	                 LanguageCode _lc)
    {
        location = _location;
        level = _level;
        languageArea = _languageArea;
        difficulty = _difficulty;
        details = _details;
        lc = _lc;
    }
Exemplo n.º 20
0
        public override bool Equals(object obj)
        {
            var binding = obj as SslCertificateBinding;

            if (binding == null)
            {
                return(false);
            }

            return(IPAddress.Equals(binding.IPAddress) &&
                   Port.Equals(binding.Port) &&
                   CertificateHash.Equals(binding.CertificateHash) &&
                   ApplicationID.Equals(binding.ApplicationID));
        }
Exemplo n.º 21
0
    public ExternalParams(ApplicationID para_acIdOverride,
	                      int para_questGiverIdOverride,
						  int para_langAreaOverride, 
	                      int para_difficultyOverride,
	                      string para_levelOverride,
	                      bool para_startImmediatelyWithoutDiag)
    {
        acIdOverride = para_acIdOverride;
        hasAcIdOverride = true;
        questGiverIdOverride = para_questGiverIdOverride;
        langAreaOverride = para_langAreaOverride;
        difficultyOverride = para_difficultyOverride;
        levelOverride = para_levelOverride;
        startImmediatelyWithoutDiag = para_startImmediatelyWithoutDiag;
    }
Exemplo n.º 22
0
    /*public static ApplicationID getMainActivityKeyForNpc(int charID){

        Debug.LogError("Mapping not implemented");
        return ApplicationID.SERENADE_HERO;
    }*/
    public static string getActivityShorthand(ApplicationID appID)
    {
        switch(appID){
        case ApplicationID.SERENADE_HERO: return translate("Music hall");
        case ApplicationID.DROP_CHOPS: return translate("Junkyard");
        case ApplicationID.MOVING_PATHWAYS: return translate("Town square");
        case ApplicationID.HARVEST: return translate("Garden");
        case ApplicationID.WHAK_A_MOLE: return translate("Monkey hotel");
        case ApplicationID.MAIL_SORTER: return translate("Post office");
        case ApplicationID.EYE_EXAM: return translate("Bridge");
        case ApplicationID.TRAIN_DISPATCHER: return translate("Train station");
        case ApplicationID.ENDLESS_RUNNER: return translate("Bike shed");
        default: return "";

        }
    }
        protected override void Execute(NativeActivityContext context)
        {
            string AppId     = string.Empty;
            string exepath   = string.Empty;
            string arguments = string.Empty;

            try
            {
                AppId = ApplicationID.Get(context);
                if ((Arguments != null) && (Arguments.Expression != null))
                {
                    arguments = Arguments.Get(context);
                }
                if (AppId != string.Empty) //scraping time
                {
                    if (!SelectHelper.CurrentRuntimeApplicationHelper.RuntimeApplicationObjects.ContainsKey(AppId))
                    {
                        if ((EXEPath != null) && (EXEPath.Expression != null))
                        {
                            exepath = EXEPath.Get(context);

                            if (string.IsNullOrEmpty(arguments))
                            {
                                Process.Start(exepath);
                            }
                            else
                            {
                                Process.Start(exepath, arguments);
                            }
                            SelectHelper.CurrentRuntimeApplicationHelper.RuntimeApplicationObjects.Add(AppId, new object());
                            LaunchResult.Set(context, true);
                        }
                    }
                }
            }catch (Exception ex)
            {
                LaunchResult.Set(context, false);
                Logger.Log.Logger.LogData(ex.Message + " in activity OpenDesktopApplication", Logger.LogLevel.Error);
                if (!ContinueOnError)
                {
                    context.Abort();
                }
            }

            //throw new NotImplementedException();
        }
Exemplo n.º 24
0
    public ActivityLaunchParams(ApplicationID _appID,
	                            int _difficulty,
	                            int _languageArea,
	                            string _userID,
	                            int _evaluation_mode,
	                            string _challenge,
	                            Mode _mode,
	                            string _modeDetais)
    {
        appID = _appID;
        difficulty = _difficulty;
        languageArea = _languageArea;
        userID = _userID;
        evaluation_mode = _evaluation_mode;
        challenge = _challenge;
        mode = _mode;
        modeDetails = _modeDetais;
    }
Exemplo n.º 25
0
 public override void InitDataPage()
 {
     dropIntervalMinutes.Items.Clear();
     for (int i = 2; i < 30; i++)
     {
         dropIntervalMinutes.Items.Add(new ListItem(i.ToString(), i.ToString()));
     }
     if (ApplicationID.IsNoNull())
     {
         foreach (loger_category objloger_category in objLogRule.loger_category.Where(s => s.ApplicationID == ApplicationID))
         {
             chkNoticeCategory.Items.Add(new ListItem(objloger_category.CategoryName, objloger_category.CategoryTypeCode));
         }
     }
     else
     {
         List <EnumParameter> objCategoryParameterList = EnumHelper.GetEnumMembers(typeof(LogCategory));
         foreach (EnumParameter objEnumParameter in objCategoryParameterList)
         {
             chkNoticeCategory.Items.Add(new ListItem(objEnumParameter.Description, objEnumParameter.Key));
         }
     }
 }
Exemplo n.º 26
0
 public void addEvent(int para_questGiverID, int para_questReceiverID,ApplicationID para_acID, Encounter para_encFullData)
 {
     events.addEvent(para_questGiverID, para_questReceiverID, para_acID,para_encFullData);
 }
Exemplo n.º 27
0
 public void addNewsItemPastActivity(ApplicationID para_acPlayed, int para_langArea, int para_difficulty, int para_questGiverID,string level, string date)
 {
     newsfeed.addNewsItemPastActivity(para_acPlayed,para_langArea,para_difficulty,para_questGiverID,level,date);
 }
Exemplo n.º 28
0
    public static string instructions(int languageArea,string level,ApplicationID appID)
    {
        LevelParameters given = new LevelParameters(level);
        string instructions = "";

        TextAsset ta = (TextAsset) Resources.Load("Localisation_Files/"+langCode.ToString()+"/Instructions_"+langCode.ToString()+"_"+appID,typeof(TextAsset));
        if(ta!=null){
            string text = ta.text;
            foreach(string line in text.Split('\n')){
                string[] values = line.Split(',');
                int la = 	int.Parse(values[0]);
                //int mode = 	int.Parse(values[1]);

                LevelParameters a = new LevelParameters(values[3]);

                if(la==languageArea)
                if((a.mode==given.mode)){
                    instructions = values[4];
                        if((a.ttsType==given.ttsType)){
                        instructions = values[4];

                            if (values[3].Equals(level))
                                return values[4];

                        }
                }

            }

        }

        return instructions;
    }
Exemplo n.º 29
0
    public static AvailableOptions workOutOptionsForActivityAndLangArea(ApplicationID para_appID, int para_langArea)
    {
        //int appID = (int) para_appID;

        string levelDBFilePath = "Localisation_Files/"+langCode+"/Instructions_"+langCode+"_"+para_appID;

        Dictionary<string,List<int>> validKeysAndCodes = new Dictionary<string, List<int>>();
        List<string> listKeys = new List<string>();

        TextAsset ta = (TextAsset) Resources.Load(levelDBFilePath,typeof(TextAsset));

        if(ta==null){
            Debug.LogError("Localisation_Files/"+langCode+"/Instructions_"+langCode+"_"+para_appID);

        }
        string text = ta.text;
        string[] lineArr = text.Split('\n');
        foreach(string line in lineArr)
        {
            string[] values = line.Split(',');

            // values[0] == application ID
            // values[1] == language area
            // values[3] == index
            // values[4] == default level string.

            if(System.Convert.ToInt32(values[0]) == para_langArea)
            {
                // Check for valid attributes.

                string lvlStr = values[3];
                string[] lvlStrParts = lvlStr.Split('-');

                for(int i=0; i<lvlStrParts.Length; i++)
                {
                    string tmpPart = lvlStrParts[i];
                    string charKey = ""+tmpPart[0];
                    int numCode = int.Parse(tmpPart.Substring(1));

                    if( ! validKeysAndCodes.ContainsKey(charKey))
                    {
                        validKeysAndCodes.Add(charKey,new List<int>());
                        listKeys.Add (charKey);
                    }

                    if( ! (validKeysAndCodes[charKey].Contains(numCode)))
                    {
                        validKeysAndCodes[charKey].Add(numCode);
                    }
                }
            }
        }

        // Sort items.
        List<string> tmpKeys = new List<string>(validKeysAndCodes.Keys);
        for(int i=0; i<tmpKeys.Count; i++)
        {
            validKeysAndCodes[tmpKeys[i]].Sort();
        }

        Dictionary<string,string[]> validKeysAndReadableOptions = new Dictionary<string, string[]>();
        Dictionary<string,string> validKeysAndTitles = new Dictionary<string, string>();

        foreach(string key in listKeys)
        {

            List<string> nxtReadableOptions = new List<string>();

            //if(wvServCom.language==LanguageCode.EN){
            // Special override for text to speech. (Displays Off and On instead of 0 and 1).
            if(key == "T")
            {
                if (validKeysAndCodes[key].Count==1)
                    continue;

                validKeysAndTitles.Add(key,LocalisationMang.translate("Text-to-speech"));

                nxtReadableOptions.AddRange(new string[] {LocalisationMang.translate("Off"),LocalisationMang.translate("On")});
                for(int k=2; k<validKeysAndCodes[key].Count; k++)
                {
                    nxtReadableOptions.Add("?");
                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }
            else if((key == "A"))
            {
                if (validKeysAndCodes[key].Count==1)
                    continue;

                string title = LocalisationMang.translate("Accuracy");

                if(para_appID==ApplicationID.MAIL_SORTER){
                    title = LocalisationMang.translate("Packages");
                }else if(para_appID==ApplicationID.SERENADE_HERO){
                    title = LocalisationMang.translate("Alternatives");
                }else if(para_appID==ApplicationID.WHAK_A_MOLE){
                    title = LocalisationMang.translate("Distractors");
                }else if(para_appID==ApplicationID.MOVING_PATHWAYS){
                    title = LocalisationMang.translate("Number of paths");
                }else if(para_appID==ApplicationID.ENDLESS_RUNNER){
                    title = LocalisationMang.translate("Words per door");
                }

                validKeysAndTitles.Add(key,title);

                if(para_appID==ApplicationID.MAIL_SORTER){
                    for(int k=0; k<validKeysAndCodes[key].Count; k++)
                    {
                        nxtReadableOptions.Add(""+(validKeysAndCodes[key][k]+1));
                    }

                }else{

                    for(int k=0; k<validKeysAndCodes[key].Count; k++)
                    {
                        nxtReadableOptions.Add(""+validKeysAndCodes[key][k]);
                    }

                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key == "S")
            {
                if (validKeysAndCodes[key].Count==1)
                    continue;

                string title = LocalisationMang.translate("Speed");

                if(para_appID==ApplicationID.MAIL_SORTER){
                    title = LocalisationMang.translate("Rotating speed");
                }else if(para_appID==ApplicationID.WHAK_A_MOLE){
                    title = LocalisationMang.translate("Monkey speed");
                }else if(para_appID==ApplicationID.MOVING_PATHWAYS){
                    title = LocalisationMang.translate("Square size");
                }else if(para_appID==ApplicationID.ENDLESS_RUNNER){
                    title = LocalisationMang.translate("Monkey speed");
                }else if(para_appID==ApplicationID.DROP_CHOPS){
                    title = LocalisationMang.translate("Split time");
                }else if(para_appID==ApplicationID.SERENADE_HERO){
                    title = LocalisationMang.translate("Speed");
                }else if(para_appID==ApplicationID.TRAIN_DISPATCHER){
                    title = LocalisationMang.translate("Attempts");
                }

                validKeysAndTitles.Add(key,title);

                if(para_appID==ApplicationID.DROP_CHOPS){//Invert the labels for solomon
                    for(int k=0; k<validKeysAndCodes[key].Count; k++)
                    {
                        nxtReadableOptions.Add(new string[]{LocalisationMang.translate("High"),LocalisationMang.translate("Medium"),LocalisationMang.translate("Low")}[validKeysAndCodes[key][k]]);
                    }

                }else{
                for(int k=0; k<validKeysAndCodes[key].Count; k++)
                {
                    nxtReadableOptions.Add(new string[]{LocalisationMang.translate("Low"),LocalisationMang.translate("Medium"),LocalisationMang.translate("High")}[validKeysAndCodes[key][k]]);
                }
                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key == "M")
            {
                if (validKeysAndCodes[key].Count==1)
                    continue;

                string title = LocalisationMang.translate("Mode");

                validKeysAndTitles.Add(key,title);

                if(langCode==LanguageCode.EN){

                    if(para_langArea==6){
                        nxtReadableOptions.Add("Letter to letter");
                        nxtReadableOptions.Add("Letter to word");

                    }else if(para_langArea==3){
                        nxtReadableOptions.Add("Category");
                        nxtReadableOptions.Add("Count");

                    }else{

                        for(int k=0; k<validKeysAndCodes[key].Count; k++)
                        {
                            nxtReadableOptions.Add(""+validKeysAndCodes[key][k]);
                        }
                    }

                }else{

                    //if(para_appID==ApplicationID.MOVING_PATHWAYS){

                    nxtReadableOptions.Add(LocalisationMang.translate("Letter to letter"));
                    nxtReadableOptions.Add(LocalisationMang.translate("Letter to word"));

                    //}else{

                    //}
                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key == "W")
            {

                validKeysAndTitles.Add(key,LocalisationMang.translate("Word difficulty"));

                if (validKeysAndCodes[key].Count==1){

                    List<int> options = new List<int>();
                    for(int k=0; k<3; k++)
                    {
                        nxtReadableOptions.Add(new string[]{LocalisationMang.translate("Easy"),LocalisationMang.translate("Medium"),LocalisationMang.translate("Hard")}[k]);
                        options.Add((k+1)*3);
                    }

                    validKeysAndCodes[key] = options;
                }else{
                    for(int k=0; k<validKeysAndCodes[key].Count; k++)
                    {
                        //Debug.Log(validKeysAndCodes[key][k]);
                        nxtReadableOptions.Add(new string[]{LocalisationMang.translate("Easy"),"","","",LocalisationMang.translate("Medium"),"","","","",LocalisationMang.translate("Hard")}[validKeysAndCodes[key][k]]);
                    }

                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key == "B")
            {
                if (validKeysAndCodes[key].Count==1)
                    continue;

                string title = LocalisationMang.translate("Number of words");

                if(para_appID==ApplicationID.MAIL_SORTER){
                    title = LocalisationMang.translate("Number of rounds");
                }else if(para_appID==ApplicationID.MOVING_PATHWAYS){
                    title = LocalisationMang.translate("Words per difficulty");
                }

                validKeysAndTitles.Add(key,title);

                if (validKeysAndCodes[key].Count==1){

                    List<int> options = new List<int>();
                    for(int k=1; k<10; k++)
                    {
                        nxtReadableOptions.Add(""+k);
                        options.Add((k));
                    }

                    validKeysAndCodes[key] = options;

                }else{

                    if(para_appID==ApplicationID.MAIL_SORTER){
                        for(int k=0; k<validKeysAndCodes[key].Count; k++)
                        {
                            nxtReadableOptions.Add(""+validKeysAndCodes[key][k]/4);
                        }
                    }else{
                        for(int k=0; k<validKeysAndCodes[key].Count; k++)
                        {
                            nxtReadableOptions.Add(""+validKeysAndCodes[key][k]);
                        }
                    }

                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key=="X"){

                if (validKeysAndCodes[key].Count==1)
                    continue;

                validKeysAndTitles.Add(key,LocalisationMang.translate("Tricky words"));
                for(int k=0; k<validKeysAndCodes[key].Count; k++)
                {
                    nxtReadableOptions.Add(new string[]{"0/4","1/4","2/4","3/4"}[validKeysAndCodes[key][k]]);
                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }else if(key=="D"){
                if (validKeysAndCodes[key].Count==1)
                    continue;

                validKeysAndTitles.Add(key,LocalisationMang.translate("Distractors"));
                for(int k=0; k<validKeysAndCodes[key].Count; k++)
                {
                    nxtReadableOptions.Add(new string[]{"0/4","1/4","2/4","3/4"}[validKeysAndCodes[key][k]]);
                }
                validKeysAndReadableOptions.Add(key,nxtReadableOptions.ToArray());

            }

        }

        // Construct the AvailableOptions data structure.
        AvailableOptions avOps = null;
        Dictionary<string,OptionInfo> opInfoLookup = new Dictionary<string, OptionInfo>();

        foreach(KeyValuePair<string,string[]> pair in  validKeysAndReadableOptions)
        {
            if( ! opInfoLookup.ContainsKey(pair.Key))
            {
                OptionInfo nxtOpInf = new OptionInfo(pair.Key,validKeysAndCodes[pair.Key],validKeysAndReadableOptions[pair.Key],validKeysAndTitles[pair.Key]);
                opInfoLookup.Add(pair.Key,nxtOpInf);
            }
        }

        avOps = new AvailableOptions(new List<string>(validKeysAndReadableOptions.Keys),opInfoLookup);
        return avOps;
    }
Exemplo n.º 30
0
    public static int getOwnerNpcOfActivity(ApplicationID appID)
    {
        switch(appID){
            case ApplicationID.SERENADE_HERO: 	return 0 ;
            case ApplicationID.DROP_CHOPS: 		return 1 ;
            case ApplicationID.MOVING_PATHWAYS: return 2 ;
            case ApplicationID.HARVEST:			return 3;
            case ApplicationID.WHAK_A_MOLE:		return 4;
            case ApplicationID.MAIL_SORTER:		return 5;
            case ApplicationID.EYE_EXAM :		return 6;
            case ApplicationID.TRAIN_DISPATCHER:return 7;
            case ApplicationID.ENDLESS_RUNNER:	return 8;
            default: return -1 ;

        }
    }
Exemplo n.º 31
0
        private bool ValidBlock1()
        {
            bool   valid = true;
            string temp  = Block_1;
            string sub   = null;

            // Check the length first.
            // If this is wrong don't bother checking anything else.
            if ((Block_1.Length < MIN_BLOCK_1_LEN) || (Block_1.Length > MAX_BLOCK_1_LEN))
            {
                errors.Add("Invalid length for block 1 : " + Block_1.Length + " Expecting length between : " + MIN_BLOCK_1_LEN + " and " + MAX_BLOCK_1_LEN);
                valid = false;
                return(valid);
            }

            // Check START OF BLOCK INDICATOR = {
            // This is a mandatory field.
            // The character { indicates the beginning of a block.
            if (temp[0] != '{')
            {
                errors.Add("BLOCK 1: Message missing START OF BLOCK INDICATOR ({)");
                valid = false;
            }

            temp = temp.Substring(1);
            // Check BLOCK IDENTIFIER = 3c
            // This is a mandatory field.
            // 1 to 3 alphanumeric characters used to define block contents.
            // This block identiifer must be 1.
            sub = temp.Substring(0, temp.IndexOf(':'));
            if (string.Equals(sub, "1") == false)
            {
                errors.Add("BLOCK 1: Invalid BLOCK IDENTIFIER : " + sub + " Expecting : 1");
                valid = false;
            }

            // We found the colon in the last step now get rid of it
            // This is a mandatory field.
            temp = temp.Substring(2);

            // Check the APPLICATION IDENTIFIER = 1a
            // This is a mandatory field.
            // The Application Identifier identifies the application within which the message is being sent or received.
            // The available options are:
            // F = FIN All user-to-user, FIN system and FIN service messages
            // A = GPA (General Purpose Application) Most GPA system and service messages
            // L = GPA Certain GPA service messages, for example, LOGIN, LAKs, ABORT These values are automatically assigned by the SWIFT system and the user's CBT
            ApplicationID = temp.Substring(0, 1);
            if ((ApplicationID.Equals("F") == false) && (ApplicationID.Equals("A") == false) && (ApplicationID.Equals("L") == false))
            {
                errors.Add("BLOCK 1: Invalid APPLICATION IDENTIFIER : " + ApplicationID + " Expecting : F, A or L");
                valid = false;
            }

            // Check SERVICE IDENTIFIER = 2n
            // This is a mandatory field.
            // The Service Identifier consists of two numeric characters.
            // It identifies the type of data that is being sent or received and, in doing so, whether the message which follows is one of the following:
            // a user-to-user message,
            // a system message,
            // a service message,
            // for example, a session control command, such as SELECT, or a logical acknowledgment, such as ACK/SAK/UAK.
            // Possible values are 01 = FIN/GPA or 21 = ACK/NAK.
            temp      = temp.Substring(1);
            ServiceID = temp.Substring(0, 2);
            if ((ServiceID.Equals("01") == false) && (ServiceID.Equals("21") == false))
            {
                errors.Add("BLOCK 1: Invalid SERVICE IDENTIFIER : " + ServiceID + " Expecting : 01 or 21");
                valid = false;
            }

            // Check the LOGICAL TERMINAL ADDRESS = 12x
            // This is a mandatory field.
            // The Logical Termial (LT) Address is a 12-character FIN address.
            // It is the address of the sending LT for input messages or of the receiving LT for output messages, and includes the Branch Code.
            // It consists of: - the BIC 8 CODE (8 characters) - the Logical Terminal Code (1 upper case alphabetic character) - the BIC Branch Code (3 characters)
            temp                = temp.Substring(2);
            LTAddress           = temp.Substring(0, 12);
            BICCode             = LTAddress.Substring(0, 8);
            LogicalTerminalCode = LTAddress.Substring(8, 1);
            BICBranchCode       = LTAddress.Substring(9, 3);
            if (IsValidBICCode(BICCode) == false)
            {
                errors.Add("BLOCK 1: Invalid BIC Code : " + BICCode);
                valid = false;
            }
            if (IsValidLogicalTerminal(LogicalTerminalCode) == false)
            {
                errors.Add("BLOCK 1: Invalid Logical Terminal : " + LogicalTerminalCode);
                valid = false;
            }
            if (IsValidBICBranchCode(BICBranchCode) == false)
            {
                errors.Add("BLOCK 1: Invalid BIC Branch Code : " + BICBranchCode);
                valid = false;
            }

            // Check the SESSION NUMBER = 4n
            // This is a mandatory field.
            // The Session Number identifies the session in which the message was transmitted.
            // It is a four digits number that is automatically generated by the user's computer and padded with zeros.
            temp          = temp.Substring(12);
            SessionNumber = temp.Substring(0, 4);
            if (IsValidSessionNumber(SessionNumber) == false)
            {
                errors.Add("BLOCK 1: Invalid SESSION NUMBER : " + SessionNumber);
                valid = false;
            }

            // Check the INPUT SEQUENCE NUMBER = 6n
            // This is a mandatory field.
            // The sequence number always consists of six digits.
            // It is the Input Sequence Number (ISN) of the sender's current input session or the Output Sequence Number (OSN) of the receiver's current output session.
            // It is automatically generated by the user's computer and padded with zeros.
            temp           = temp.Substring(4);
            SequenceNumber = temp.Substring(0, 6);
            if (IsValidSequenceNumber(SequenceNumber) == false)
            {
                errors.Add("BLOCK 1: Invalid INPUT SEQUENCE NUMBER : " + SequenceNumber);
                valid = false;
            }

            // Check END OF BLOCK INDICATOR = {
            // This is a mandatory field.
            // The character } indicates the end of a block.
            temp = temp.Substring(6);
            if (temp[0] != '}')
            {
                errors.Add("BLOCK 1: Message missing START OF BLOCK INDICATOR ({)");
                valid = false;
            }

            return(valid);
        }
Exemplo n.º 32
0
    // Use this if language area and difficulty are fixed and cannot be altered by the user.
    // Eg. If a user has selected a langArea and Diff by selecting to play a ghostbook photo page.
    public void init(int para_langArea, int para_difficulty, int para_questGiverID)
    {
        //canChangeLanguageArea = false;
        //canChangeDifficulty = false;

        GhostbookManagerLight gbMang = GhostbookManagerLight.getInstance();

        //IGBLangAreaReference langAreaRef = gbMang.getLangAreaReferenceMaterial();
        //IGBDifficultyReference diffRefMat = gbMang.getDifficultyReferenceMaterial();
        //	acRefMat = gbMang.getActivityReferenceMaterial();

        string langAreaName = gbMang.getNameForLangArea(para_langArea);
        string diffName = gbMang.createDifficultyShortDescription(para_langArea,para_difficulty);

        langArea = para_langArea;
        diff = para_difficulty;
        questGiverID = para_questGiverID;

        // Switch on dimer object.
        GameObject dimScreen = transform.FindChild("DimScreen").gameObject;
        dimScreen.renderer.enabled = true;
        dimScreen.renderer.material.color = Color.black;

        // Init text items.
        string[] elementNames   = {"Title","LangAreaTitle","DifficultyTitle","LangAreaContent","DifficultyContent","ActivityOpScrollArea","PrevActivityButton","NextActivityButton","OkButton","ApplicableActivitiesTitle","ActivityOptionsTitle"};
        string[] elementContent = {LocalisationMang.translate("Teacher options"),LocalisationMang.translate("Language area"),LocalisationMang.translate("Difficulty"),langAreaName,diffName,"AcOpScrollArea","<",">",LocalisationMang.translate("Ok"),LocalisationMang.translate("Applicable activities"),LocalisationMang.translate("Activity options")};
        bool[] destroyGuideArr = {true,true,true,false,false,false,true,true,true,true,true};
        int[] textElementTypeArr = {0,0,0,0,0,0,0,0,0,0,0};

        prepTextElements(elementNames,elementContent,destroyGuideArr,textElementTypeArr,null);

        scrollPos = new Vector2();
        tmpVect = new Vector2();

        applicableActivities = LocalisationMang.getAllApplicableActivitiesForLangArea(langArea);

        currAcListIndex = 0;//applicableActivities.Count-1;

        currAcID = applicableActivities[currAcListIndex];//acRefMat.getAcIDEnum_byAcPKey();

        updateActivitySymbol();
    }
Exemplo n.º 33
0
    /// <summary>
    /// 保存信息
    /// </summary>
    public void SaveInfo()
    {
        if (ApplicationID.IsNull())
        {
            ///程序代码
            objloger_application.ApplicationCode = txtApplicationCode.TextCutWord(100);
            objloger_application.ParentID        = ParentID;
            ///程序名称
            objloger_application.ApplicationName = txtApplicationName.TextCutWord(100);
            ///程序备注
            objloger_application.Remark    = txtRemark.TextCutWord(200);
            objloger_application.SortIndex = txtSortIndex.TextInt;
            ///是否自动释放
            objloger_application.IsDispose       = chkIsDispose.Checked;
            objloger_application.IsNotice        = chkIsNotice.Checked;
            objloger_application.NoticePhone     = txtNoticePhone.Text;
            objloger_application.NoticeEmail     = txtNoticeEmail.Text;
            objloger_application.LogerCount      = txtLogerCount.TextInt;
            objloger_application.NoticeInterval  = txtNoticeInterval.TextInt;
            objloger_application.NoticeSleep     = txtNoticeSleep.TextInt;
            objloger_application.NoticeCategory  = chkNoticeCategory.SelectValueString;
            objloger_application.IntervalMinutes = dropIntervalMinutes.SelectValueInt;
            objloger_application.MinutesMaxCount = txtMinutesMaxCount.TextInt;
            objloger_application.HeaderKey       = txtHeaderKey.TextTrim;
            objloger_application.RequestKey      = txtRequestKey.TextTrim;
            if (objloger_application.IsNotice)
            {
                if (objloger_application.NoticeCategory.IsNull())
                {
                    MessageDialog("不好意思,选择日志通知必须选择通知日志类型");
                    return;
                }

                if (objloger_application.NoticeEmail.IsNull() && objloger_application.NoticePhone.IsNull())
                {
                    MessageDialog("不好意思,选择日志通知必须输入邮箱或手机号码其中一个");
                    return;
                }
            }
            objLogRule.InsertApplication(objloger_application);

            RefreshFrame("frmApplicationTree", "ApplicationTree.aspx?ApplicationID=" + objloger_application.ApplicationID.ToString(), "新增成功", "ApplicationInfo.aspx?ApplicationID=" + objloger_application.ApplicationID.ToString());
        }
        else
        {
            objloger_application = objLogRule.loger_application.FirstOrDefault(p => p.ApplicationID == ApplicationID);
            if (CheckEditObjectIsNull(objloger_application))
            {
                return;
            }
            ///程序代码
            objloger_application.ApplicationCode = txtApplicationCode.TextCutWord(100);

            ///程序名称
            objloger_application.ApplicationName = txtApplicationName.TextCutWord(100);
            ///程序备注
            objloger_application.Remark    = txtRemark.TextCutWord(200);
            objloger_application.SortIndex = txtSortIndex.TextInt;
            ///是否自动释放
            objloger_application.IsDispose       = chkIsDispose.Checked;
            objloger_application.IsNotice        = chkIsNotice.Checked;
            objloger_application.NoticePhone     = txtNoticePhone.Text;
            objloger_application.NoticeEmail     = txtNoticeEmail.Text;
            objloger_application.LogerCount      = txtLogerCount.TextInt;
            objloger_application.NoticeInterval  = txtNoticeInterval.TextInt;
            objloger_application.NoticeSleep     = txtNoticeSleep.TextInt;
            objloger_application.NoticeCategory  = chkNoticeCategory.SelectValueString;
            objloger_application.IntervalMinutes = dropIntervalMinutes.SelectValueInt;
            objloger_application.MinutesMaxCount = txtMinutesMaxCount.TextInt;
            objloger_application.HeaderKey       = txtHeaderKey.TextTrim;
            objloger_application.RequestKey      = txtRequestKey.TextTrim;
            if (objloger_application.IsNotice)
            {
                if (objloger_application.NoticeCategory.IsNull())
                {
                    MessageDialog("不好意思,选择日志通知必须选择通知日志类型");
                    return;
                }

                if (objloger_application.NoticeEmail.IsNull() && objloger_application.NoticePhone.IsNull())
                {
                    MessageDialog("不好意思,选择日志通知必须输入邮箱或手机号码其中一个");
                    return;
                }
            }
            objLogRule.UpdateApplication(objloger_application);
            RefreshFrame("frmApplicationTree", "ApplicationTree.aspx?ApplicationID=" + objloger_application.ApplicationID.ToString(), "修改成功", "ApplicationInfo.aspx?ApplicationID=" + objloger_application.ApplicationID.ToString());
        }
    }
Exemplo n.º 34
0
 private string GetDistinctString(bool ShowPathInfo)
 {
     return(String.Format(@"HubID = {0}, ApplicationID = {1}, UserID = {2}, ChannelID = {3}", HubID.Trim(), ApplicationID.Trim(), UserID.Trim(), ChannelID.Trim()));
 }
Exemplo n.º 35
0
    private void updateActivitySymbol()
    {
        currAcID  = applicableActivities[currAcListIndex];

        Debug.Log(currAcID);

        if(currAcID == ApplicationID.APP_ID_NOT_SET_UP){

            Debug.LogWarning("needs something here?");
            if(optionsCache == null) { optionsCache = new Dictionary<ApplicationID, AvailableOptions>(); }

            updateAvailableOptions();

            return;
        }

        Transform reqActivitySymbolPrefab = Resources.Load<Transform>("Prefabs/Ghostbook/ActivitySymbols/SmallSymbols_"+currAcID);

        if(reqActivitySymbolPrefab != null)
        {
            Sprite reqSymbolSprite = reqActivitySymbolPrefab.GetComponent<SpriteRenderer>().sprite;
            transform.FindChild("ActivitySymbol").GetComponent<SpriteRenderer>().sprite = reqSymbolSprite;
        }

        if(optionParamStore == null) {
            optionParamStore = new Dictionary<string, string>();
            paramKeyOrder = new List<string>();
        } else {
            optionParamStore.Clear();
            paramKeyOrder.Clear();
        }

        defaultParamStrForConfig = LocalisationMang.getFirstLevelConfiguration(currAcID,langArea,diff);

        string[] splitParams = defaultParamStrForConfig.Split('-');

        for(int i=0; i<splitParams.Length; i++)
        {
            string tmpItem = splitParams[i];
            if((tmpItem != null)&&(tmpItem != ""))
            {
                string firstChar = ""+tmpItem[0];
                paramKeyOrder.Add(firstChar);
                optionParamStore.Add(firstChar,tmpItem);
            }
        }

        updateAvailableOptions();
    }
 public SendToOtherActivityDiagController(ApplicationID para_destActivityID, int para_activityMasterOwnerID)
 {
     destActivityID = para_destActivityID;
     activityMasterOwnerID = para_activityMasterOwnerID;
     commandQueue = null;
 }
Exemplo n.º 37
0
    protected void endActivity(ApplicationID para_acID, bool para_outcome, GameyResultData para_gameyData, bool para_activityIsIncomplete)
    {
        GameObject poRef = PersistentObjMang.getInstance();
        DatastoreScript ds = poRef.GetComponent<DatastoreScript>();

        if(ds.getData("ActivityOutcome")!=null){//this is a replay
            System.Object[] previousOutcome = (System.Object[])ds.getData("ActivityOutcome");
            ds.removeData("ActivityOutcome");

            System.Object[] dataArr = new System.Object[3];
            dataArr[0] = para_acID;
            dataArr[1] = para_outcome||((bool)previousOutcome[1]);//Either this or previous outcome were positive
            dataArr[2] = para_activityIsIncomplete&&((bool)previousOutcome[2]);//Both games, the activity was incomplete
            ds.insertData("ActivityOutcome",dataArr);

        }else{

        // Store basic info.
            System.Object[] dataArr = new System.Object[3];
            dataArr[0] = para_acID;
            dataArr[1] = para_outcome;
            dataArr[2] = para_activityIsIncomplete;
            ds.insertData("ActivityOutcome",dataArr);

        }

        // Store detailed activity result.
        if(acSessionMetaData != null)
        {
            acSessionMetaData.recordActivityEnd();
            if(acResultData != null)
            {
                acResultData.saveActivitySessionMetaData(acSessionMetaData,para_gameyData);
                //ds.insertData("ActivityResult",acResultData);
            }
        }

        if(( ! para_activityIsIncomplete)
           &&
           ((para_acID == ApplicationID.DROP_CHOPS)
         	||(para_acID == ApplicationID.SERENADE_HERO)
         	||(para_acID == ApplicationID.MOVING_PATHWAYS)
         	||(para_acID == ApplicationID.HARVEST)
         	||(para_acID == ApplicationID.WHAK_A_MOLE)
         	||(para_acID == ApplicationID.MAIL_SORTER)
         	||(para_acID == ApplicationID.EYE_EXAM)
         	||(para_acID == ApplicationID.TRAIN_DISPATCHER)
         	||(para_acID == ApplicationID.ENDLESS_RUNNER))
          )
        {
            // Trigger results screen.

            Transform resultsWindowPrefab = Resources.Load<Transform>("Prefabs/ResultViewerWindow");

            Rect origPrefab2DBounds = CommonUnityUtils.get2DBounds(resultsWindowPrefab.FindChild("WindowBounds").renderer.bounds);
            GameObject nwResultWindow = WorldSpawnHelper.initWorldObjAndBlowupToScreen(resultsWindowPrefab,origPrefab2DBounds);
            nwResultWindow.name = "ResultViewerWindow";
            nwResultWindow.transform.position = new Vector3(Camera.main.transform.position.x,
                                                            Camera.main.transform.position.y,
                                                            Camera.main.transform.position.z + 5f);

            ActivityResultViewer resViewer = null;
            if(para_acID == ApplicationID.DROP_CHOPS)
            {
                resViewer = nwResultWindow.AddComponent<SJResultViewer>();
            }
            else if(para_acID == ApplicationID.SERENADE_HERO)
            {
                resViewer = nwResultWindow.AddComponent<SHResultViewer>();
            }
            else if(para_acID == ApplicationID.MOVING_PATHWAYS)
            {
                resViewer = nwResultWindow.AddComponent<MPResultViewer>();
            }
            else if(para_acID == ApplicationID.HARVEST)
            {
                resViewer = nwResultWindow.AddComponent<HarvestResultViewer>();
            }
            else if(para_acID == ApplicationID.WHAK_A_MOLE)
            {
                resViewer = nwResultWindow.AddComponent<WAMResultViewer>();
            }
            else if(para_acID == ApplicationID.MAIL_SORTER)
            {
                resViewer = nwResultWindow.AddComponent<MSResultViewer>();
            }
            else if(para_acID == ApplicationID.EYE_EXAM)
            {
                resViewer = nwResultWindow.AddComponent<BBResultViewer>();
            }
            else if(para_acID == ApplicationID.TRAIN_DISPATCHER)
            {
                resViewer = nwResultWindow.AddComponent<TDResultViewer>();
            }
            else if(para_acID == ApplicationID.ENDLESS_RUNNER)
            {
                resViewer = nwResultWindow.AddComponent<PDResultViewer>();
            }

            if(resViewer != null)
            {
                resViewer.registerListener("AcScen",this);
                resViewer.init(acResultData);
            }

            pauseScene(true);
        }
        else
        {
            exitActivityScene();
        }
    }
Exemplo n.º 38
0
    protected override void CurrentContent_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        switch (e.CommandName)
        {
        case "Remove":
            objLogRule.loger_operationloging.DeleteDataPrimaryKey(e.CommandArgument.ToString());
            RenderPage();
            break;

        case "Detail":
            RedirectState("OperationLogInfo.aspx?OperationID=" + e.CommandArgument.ToString() + "&ApplicationID=" + ApplicationID.ToString());
            break;
        }
    }
Exemplo n.º 39
0
    public void addPhoto(int para_questGiverID,
	                     int para_activityOwnerID,
	                     ApplicationID para_activityKey,
	                     int para_langAreaID,
	                     int para_difficultyIndexInLangArea,
	                     int para_photoDifficultyPosition)
    {
        if(  satchel.getPhotos()[para_langAreaID][para_difficultyIndexInLangArea].Count < 4)
        {
            PhotoRecorder photoRecorder = new PhotoRecorder();
            Photo photo = photoRecorder.buildNewPhotoData(para_questGiverID,para_activityOwnerID,para_activityKey,para_langAreaID,para_difficultyIndexInLangArea);

            satchel.getPhotos()[para_langAreaID][para_difficultyIndexInLangArea].Add(photo);
        }
    }
Exemplo n.º 40
0
    public static string getFirstLevelConfiguration(ApplicationID appID, int languageArea,int difficulty)
    {
        //Debug.LogWarning("Still in use?");
        string levelDBFilePath = "";

        levelDBFilePath = "Localisation_Files/"+langCode+"/Instructions_"+langCode+"_"+appID;
            TextAsset ta = (TextAsset) Resources.Load(levelDBFilePath,typeof(TextAsset));
            string text = ta.text;
            string[] lineArr = text.Split('\n');

            foreach(string line in lineArr){

                string[] values = line.Split(',');

                if(System.Convert.ToInt32(values[0])==languageArea){

                    return values[3];

                }
            }

        return "";

        //TextAsset ta = (TextAsset) Resources.Load("Localisation_Files/"+language.ToString()+"/AllLevels_"+language.ToString(),typeof(TextAsset));
    }
Exemplo n.º 41
0
    public override void init(ActivityResult para_acResultData)
    {
        base.init(para_acResultData);

        acPKey = acResultData.getAcID();
    }
Exemplo n.º 42
0
    public override void init(ActivityResult para_acResultData)
    {
        base.init(para_acResultData);

        //GhostbookManager gbMang = GhostbookManager.getInstance();
        //IGBActivityReference acRef = gbMang.getActivityReferenceMaterial();
        acPKey = acResultData.getAcID();
    }