TryParse
How do I use Try Parse
Below are practical examples compiled from projects for learning and reference purposes
Featured Snippets
File name: AccountService.cs
Copy
173 private void ParseResult(string result)
174 {
175 if (string.IsNullOrEmpty(result))
176 {
177 this.Message = "Server's response was empty. Please register through account website during this service interruption.";
178 return;
179 }
180
181 Dictionary
182 if (values == null)
183 {
184 this.Message = "Service temporarily unavailable. Please register through account website.";
185 return;
186 }
187
188 int returnCodeInt = -1;
189 string returnCodeString = string.Empty;
190 string message;
191
192 values.TryGetValue("ReturnCode", out returnCodeString);
193 values.TryGetValue("Message", out message);
194 int.TryParse(returnCodeString, out returnCodeInt);
195
196 this.ReturnCode = returnCodeInt;
197 if (returnCodeInt == 0)
198 {
199 // returnCode == 0 means: all ok. message is new AppId
200 this.AppId = message;
201 }
202 else
203 {
204 // any error gives returnCode != 0
205 this.AppId = string.Empty;
206 this.Message = message;
207 }
208 }
File name: VSCode.cs
Copy
209 {
210 get
211 {
212 // Feature creation date.
213 DateTime lastTime = new DateTime(2015, 10, 8);
214
215 if (EditorPrefs.HasKey("VSCode_LastUpdate"))
216 {
217 DateTime.TryParse(EditorPrefs.GetString("VSCode_LastUpdate"), out lastTime);
218 }
219 return lastTime;
220 }
221 set
222 {
223 EditorPrefs.SetString("VSCode_LastUpdate", value.ToString());
224 }
225 }
File name: GameControllerScript.cs
Copy
248 private void adjustConnectors() {
249 int j, k, axis;
250 ConnectorScript connectorScript;
251 bool show;
252// for (j = 0; j <= 2; j++) {
253// for (k = 0; k <= 2; k++) {
254// for (axis = 0; axis <= 2; axis++) {
255// connectorScript = this.connectors[j,k,axis].gameObject.GetComponent("ConnectorScript") as ConnectorScript;
256// connectorScript.show = true;
257//
258// if (this.options.board_type == "Hollow Cube") {
259// if(j == 1 & k == 1) {
260// connectorScript.show = false;
261// }
262// }
263//
264// if (this.options.board_type == "Box Outline") { //Box Outline
265// if(j == 1 || k == 1) {
266// connectorScript.show = false;
267// }
268// }
269//
270// if (this.options.board_type == "Four Walls") {
271// //remove center connector on the x axis
272// if(axis == 0 && j == 1 & k == 1) {
273// connectorScript.show = false;
274// }
275// //remove 3 center connectors on the y axis
276// if(axis == 1 && j == 1) {
277// connectorScript.show = false;
278// }
279// //remove 3 center connectors on the z axis
280// if(axis == 2 && k == 1) {
281// connectorScript.show = false;
282// }
283// }
284//
285//
286// if (this.options.board_type == "No Corners") {
287// if(j != 1 && k != 1) {
288// connectorScript.show = false;
289// }
290// }
291// }}}
292 }
293
294 public bool doMove (string axis, int direction) {
295 int loop1, loop2; //looping variables
296 int x, y, z; //block location variables
297 int numMoves = 0; //number of moves to make
298 int scoreChange = 0;
299 bool blockCollision = false;
300 bool blockCollisionSound = false;
301 Transform blockA, blockB, blockC; //variables for holding the three blocks in a row
302 IDictionary
303 IDictionary
304 int[,,] numbersAfterMove = new int[3,3,3];
305;
306 if (PlayerPrefs.GetString ("game_status") != "playing") return false;
307 if (this.gameView != "game") return false;
308
309 //loop through each of the 9 rows to be calculated
310 for(loop1 = 0; loop1 <=2; loop1++) {
311 for(loop2 = 0; loop2 <=2; loop2++) {
312 if (axis == "x") {
313 y = loop1;
314 z = loop2;
315 if (direction == 1) {
316 blockA= this.blocks[0,y,z];
317 blockB= this.blocks[1,y,z];
318 blockC= this.blocks[2,y,z];
319 }
320 else {
321 blockA= this.blocks[2,y,z];
322 blockB= this.blocks[1,y,z];
323 blockC= this.blocks[0,y,z];
324 }
325 }
326 else if (axis == "y") {
327 x = loop1;
328 z = loop2;
329 if (direction == 1) {
330 blockA= this.blocks[x,0,z];
331 blockB= this.blocks[x,1,z];
332 blockC= this.blocks[x,2,z];
333 }
334 else {
335 blockA= this.blocks[x,2,z];
336 blockB= this.blocks[x,1,z];
337 blockC= this.blocks[x,0,z];
338 }
339 }
340 else {
341 x = loop1;
342 y = loop2;
343 if (direction == 1) {
344 blockA= this.blocks[x,y,0];
345 blockB= this.blocks[x,y,1];
346 blockC= this.blocks[x,y,2];
347 }
348 else {
349 blockA= this.blocks[x,y,2];
350 blockB= this.blocks[x,y,1];
351 blockC= this.blocks[x,y,0];
352 }
353 }
354 calculateRowChanges(this.getBlockNumber(blockA), this.getBlockNumber(blockB), this.getBlockNumber(blockC), ref scoreChange, ref newNumbers, ref shiftBy, ref blockCollision);
355
356 blockA.GetComponent
357 blockB.GetComponent
358 blockC.GetComponent
359
360 numMoves = numMoves + shiftBy["a"] + shiftBy["b"] + shiftBy["c"];
361 if (blockCollision) blockCollisionSound = true;
362
363 int newHighestBlock = 0;
364 if(newNumbers["a"] > PlayerPrefs.GetInt ("game_highest_block")) newHighestBlock = newNumbers["a"];
365 if(newNumbers["b"] > PlayerPrefs.GetInt ("game_highest_block")) newHighestBlock = newNumbers["b"];
366 if(newNumbers["c"] > PlayerPrefs.GetInt ("game_highest_block")) newHighestBlock = newNumbers["c"];
367
368 if (newHighestBlock > 0) {
369 PlayerPrefs.SetInt ("game_highest_block", newHighestBlock);
370 if (newHighestBlock == 2048) PlayerPrefs.SetString("game_status","game_won");
371 PlayerPrefs.Save ();
372 this.timer.SetNextBlockTarget(newHighestBlock);
373 if (newHighestBlock > this.getHighestBlock()) this.SetHighestBlock(newHighestBlock);
374 }
375
376
377
378
379 PlayerPrefs.Save ();
380
381 //save the numbers after the move for redo
382 numbersAfterMove[blockA.GetComponent
383 blockA.GetComponent
384 blockA.GetComponent
385
386 numbersAfterMove[blockB.GetComponent
387 blockB.GetComponent
388 blockB.GetComponent
389
390 numbersAfterMove[blockC.GetComponent
391 blockC.GetComponent
392 blockC.GetComponent
393 }
394 }
395
396 if(blockCollisionSound && this.options.play_sounds) {
397 this.collideAudioSource.PlayDelayed(this.moveDuration);
398 }
399
400 if (numMoves > 0) {
401 this.moveStartTime = Time.time;
402 this.setScore (this.score + scoreChange);
403 if(this.options.play_sounds) {
404 if (axis == "x") this.swipeAudioSource.PlayOneShot(swipeSoundX);
405 if (axis == "y") this.swipeAudioSource.PlayOneShot(swipeSoundY);
406 if (axis == "z") this.swipeAudioSource.PlayOneShot(swipeSoundZ);
407 }
408 return true;
409 }
410 else {
411 return false;
412 }
413 }
414
415 //Determine the possible successful combines between 3 blockNumbers (a,b,c) being pushed toward c
416 void calculateRowChanges (int a, int b, int c, ref int scoreChange, ref IDictionary
417 blockCollision = false;
418
419 //first check if we have any -2 values which signify that blocks cant merge along this connector
420 if(a == -2 || b == -2 || c == -2) {
421 newNumbers["a"] = a;
422 newNumbers["b"] = b;
423 newNumbers["c"] = c;
424 shiftBy["a"] = 0;
425 shiftBy["b"] = 0;
426 shiftBy["c"] = 0;
427 }
428 else {
429 //figure out if any of the three merges occurred
430 shiftBy ["c"] = 0;
431 if (c > -1 && c == b) { //b and c merged
432 scoreChange = scoreChange + c*2;
433 blockCollision = true;
434 newNumbers["c"] = c*2;
435 newNumbers["b"] = a;
436 newNumbers["a"] = -1;
437 shiftBy["b"] = 1;
438 if(a > -1) {
439 shiftBy["a"] = 1;
440 }
441 else if (a == -1) {
442 shiftBy["a"] = 0;
443 }
444 }
445 else if (b > -1 && a == b) { //a and b merged
446 scoreChange = scoreChange + a*2;
447 blockCollision = true;
448 if(c == -1) {
449 newNumbers["c"] = b*2;
450 newNumbers["b"] = -1;
451 newNumbers["a"] = -1;
452 shiftBy["b"] = 1;
453 shiftBy["a"] = 2;
454 }
455 else {
456 newNumbers["c"] = c;
457 newNumbers["b"] = b*2;
458 newNumbers["a"] = -1;
459 shiftBy["b"] = 0;
460 shiftBy["a"] = 1;
461 }
462 }
463 else if (c > -1 && a == c && b == -1) { //a and c merged
464 scoreChange = scoreChange + c*2;
465 blockCollision = true;
466 newNumbers["c"] = c*2;
467 newNumbers["b"] = -1;
468 newNumbers["a"] = -1;
469 shiftBy["b"] = 0;
470 shiftBy["a"] = 2;
471 } //end of merges block
472 else { //no merges occurred
473 if(c > -1) { //last column has number
474 newNumbers["c"] = c;
475 if(b > -1) { //second column has number
476 newNumbers["b"] = b;
477 newNumbers["a"] = a;
478 shiftBy["b"] = 0;
479 shiftBy["a"] = 0;
480 }
481 else if(b == -1) {//second column empty
482 newNumbers["b"] = a;
483 newNumbers["a"] = -1;
484 shiftBy["b"] = 0;
485 if (a == -1) {
486 shiftBy["a"] = 0;
487 }
488 else {
489 shiftBy["a"] = 1;
490 }
491 }
492
493 } //end of block for value in c column
494 else if (c == -1) { //first column empty
495 if(b > -1) { //second column has number
496 newNumbers["c"] = b;
497 newNumbers["b"] = a;
498 newNumbers["a"] = -1;
499 shiftBy["b"] = 1;
500 if(a > -1) {
501 shiftBy["a"] = 1;
502 }
503 else {
504 shiftBy["a"] = 0;
505 }
506
507 }
508 else if(b == -1) { //second column empty and first column empty
509 newNumbers["c"] = a;
510 newNumbers["b"] = -1;
511 newNumbers["a"] = -1;
512 shiftBy["b"] = 0;
513 if (a == -1) {
514 shiftBy["a"] = 0;
515 }
516 else {
517 shiftBy["a"] = 2;
518 }
519 }
520 }
521 } //end of no merges block
522 } //end of check for -2;
523 }
524
525
526 void Update (){
527 int x =0, y=0, z=0, newNumber=0;
528 if(GameControllerScript.performRestart) {
529 this.restart ();
530 GameControllerScript.performRestart = false;
531 }
532 if(moveStartTime >= 0) {
533 if(Time.time - this.moveStartTime > this.moveDuration + 0.05F) {
534 this.fillRandomBlock(ref x, ref y, ref z, ref newNumber);
535 this.saveHistory ();
536 this.moveStartTime = -1F;
537 if(this.getEmptyBlocks().Count == 0) {
538 if(this.CheckGameOver()) {
539 PlayerPrefs.SetString ("game_status", "game_over");
540 PlayerPrefs.Save();
541 }
542 }
543 }
544 }
545 else {
546 bool moved;
547 if (Input.GetKeyUp("right")) moved = this.doMove ("x", 1);
548 if (Input.GetKeyUp("left")) moved = this.doMove ("x", -1);
549 if (Input.GetKeyUp("up")) moved = this.doMove ("y", 1);
550 if (Input.GetKeyUp("down")) moved = this.doMove ("y", -1);
551 if (Input.GetKeyUp("a")) moved = this.doMove ("z", 1);
552 if (Input.GetKeyUp("z")) moved = this.doMove ("z", -1);
553 }
554 this.adjustConnectors();
555 if (Input.GetKey(KeyCode.Escape))
556 {
557 Application.Quit();
558 }
559 }
560
561 void FixedUpdate () {
562 }
563
564 void setScore(int score) {
565 this.score = score;
566 PlayerPrefs.SetInt ("score", score);
567
568 //handle setting high score
569 if(this.score > this.GetHighScore()) {
570 this.SetHighScore(this.score);
571 }
572 }
573
574 public void restart() {
575 int[,,] positions = new int[3, 3, 3];
576 int x=0, y=0, z=0, newNumber=0;
577 this.gameLight.intensity = this.lightIntensity;
578
579 for (x = 0; x <= 2; x++) {
580 for (y = 0; y <= 2; y++) {
581 for (z = 0; z <= 2; z++) {
582 this.setBlockNumber(this.blocks[x,y,z], this.getInitialBlockNumber(x,y,z));
583 positions[x,y,z] = -1;
584 }
585 }
586 }
587
588 this.adjustConnectors ();
589
590 PlayerPrefs.SetString ("redo_moves2","");
591 PlayerPrefs.SetString ("redo_moves1","");
592 PlayerPrefs.SetString ("redo_moves0","");
593 PlayerPrefs.SetInt ("redos", 2);
594 PlayerPrefs.SetString ("game_status", "playing");
595 PlayerPrefs.SetInt ("game_highest_block", 0);
596 PlayerPrefs.SetInt ("cube_rotation_x", 0);
597 PlayerPrefs.SetInt ("cube_rotation_y", 0);
598 PlayerPrefs.SetInt ("cube_rotation_z", 0);
599 PlayerPrefs.Save ();
600
601 this.fillRandomBlock(ref x, ref y, ref z, ref newNumber);
602 positions [x, y, z] = newNumber;
603 this.fillRandomBlock(ref x, ref y, ref z, ref newNumber);
604 positions [x, y, z] = newNumber;
605 this.saveHistory();
606
607 this.setScore (0);
608
609 TimerScript timerScript = this.gameObject.GetComponent ("TimerScript") as TimerScript;
610 timerScript.ResetTimer();
611 }
612
613 public int GetHighScore()
614 {
615 string key = "highscore-" + options.GetOptionsKey();
616 if (PlayerPrefs.HasKey (key)) {
617 return PlayerPrefs.GetInt (key);
618 }
619 else {
620 this.SetHighScore(0);
621 return 0;
622 }
623 }
624
625 void SetHighScore(int myHighScore)
626 {
627 string key = "highscore-" + options.GetOptionsKey();
628 PlayerPrefs.SetInt( key, myHighScore );
629 PlayerPrefs.Save();
630 }
631
632 public int getHighestBlock()
633 {
634 string key = "highestblock-" + options.GetOptionsKey();
635 if (PlayerPrefs.HasKey (key)) {
636 return PlayerPrefs.GetInt (key);
637 }
638 else {
639 this.SetHighestBlock(0);
640 return 0;
641 }
642 }
643
644 void SetHighestBlock(int highestBlock)
645 {
646 string key = "highestblock-" + options.GetOptionsKey();
647 PlayerPrefs.SetInt( key, highestBlock );
648 PlayerPrefs.Save();
649 }
650
651 private bool CheckGameOver() {
652
653 string[] axisList = new string[3] {"x", "y", "z"};
654 int direction = 1;
655 string axis = "x";
656 int loop1, loop2, loopAxis; //looping variables
657 int x, y, z; //block location variables
658 int numMoves = 0; //number of moves to make
659 int scoreChange = 0;
660 bool blockCollision = false;
661 Transform blockA, blockB, blockC; //variables for holding the three blocks in a row
662 IDictionary
663 IDictionary
664
665 //loop through each of the 9 rows to be calculated
666 for(loopAxis = 0; loopAxis < 3; loopAxis ++) {
667 axis = axisList[loopAxis];
668 for(direction = -1; direction < 2; direction += 2) {
669 for(loop1 = 0; loop1 <=2; loop1++) {
670 for(loop2 = 0; loop2 <=2; loop2++) {
671 if (axis == "x") {
672 y = loop1;
673 z = loop2;
674 if (direction == 1) {
675 blockA= this.blocks[0,y,z];
676 blockB= this.blocks[1,y,z];
677 blockC= this.blocks[2,y,z];
678 }
679 else {
680 blockA= this.blocks[2,y,z];
681 blockB= this.blocks[1,y,z];
682 blockC= this.blocks[0,y,z];
683 }
684 }
685 else if (axis == "y") {
686 x = loop1;
687 z = loop2;
688 if (direction == 1) {
689 blockA= this.blocks[x,0,z];
690 blockB= this.blocks[x,1,z];
691 blockC= this.blocks[x,2,z];
692 }
693 else {
694 blockA= this.blocks[x,2,z];
695 blockB= this.blocks[x,1,z];
696 blockC= this.blocks[x,0,z];
697 }
698 }
699 else {
700 x = loop1;
701 y = loop2;
702 if (direction == 1) {
703 blockA= this.blocks[x,y,0];
704 blockB= this.blocks[x,y,1];
705 blockC= this.blocks[x,y,2];
706 }
707 else {
708 blockA= this.blocks[x,y,2];
709 blockB= this.blocks[x,y,1];
710 blockC= this.blocks[x,y,0];
711 }
712 }
713 calculateRowChanges(this.getBlockNumber(blockA), this.getBlockNumber(blockB), this.getBlockNumber(blockC), ref scoreChange, ref newNumbers, ref shiftBy, ref blockCollision);
714
715 numMoves = numMoves + shiftBy["a"] + shiftBy["b"] + shiftBy["c"];
716 }
717 }
718 }
719 }
720 if (numMoves > 0) {
721 return false;
722 }
723 else {
724 return true;
725 }
726 }
727
728 void OnGUI() {
729 //GAME GUI
730 if (this.gameView == "game") {
731 GUI.skin = currentGUISkin;
732 this.gameLight.intensity = this.lightIntensity;
733 this.mainCamera.transform.eulerAngles = new Vector3 (16F, 29.5F, 0);
734
735 //create rotating buttons
736
737
738
739 if (PlayerPrefs.GetString ("game_status") == "game_over") {
740 GUI.Label (new Rect (0, Screen.height * 0.3f , Screen.width, Screen.height * 0.10F), "Game Over", "BigLabel");
741 this.gameLight.intensity = 0;
742 }
743 if (PlayerPrefs.GetString ("game_status") == "game_won") {
744 GUI.Label (new Rect (0, Screen.height * 0.3f , Screen.width, Screen.height * 0.10F), "You Won!", "BigLabel");
745 if (GUI.Button(new Rect(Screen.width * .33f, Screen.height * 0.4F, Screen.width * 0.30F, Screen.height * 0.06F),"Continue")) {
746 PlayerPrefs.SetString ("game_status", "playing");
747 PlayerPrefs.Save ();
748 }
749 this.gameLight.intensity = 0;
750 }
751
752 GUI.Label (new Rect (0, 0, Screen.width, Screen.height * 0.06F), "Score: " + this.score.ToString (), "BigLabel");
753 string highScoreText = "High Score/Block: " + this.GetHighScore ().ToString () + " / " + this.getHighestBlock ().ToString ();
754 GUI.Label (new Rect (0, Screen.height * 0.06F, Screen.width, Screen.height / 10), highScoreText, "SmallLabel");
755
756
757 GUIStyle style = currentGUISkin.GetStyle ("button");
758 //style.fontSize = 14;
759
760 if (GUI.Button(new Rect(1, Screen.height * 0.12F, Screen.width * 0.30F, Screen.height * 0.06F),"Menu")) {
761 this.gameView = "menu";
762 }
763 if (GUI.Button(new Rect(Screen.width * .33f, Screen.height * 0.12F, Screen.width * 0.33F, Screen.height * 0.06F),"Restart")) {
764 this.restart();
765 }
766 if (GUI.Button(new Rect(Screen.width * .7f, Screen.height * 0.12F, Screen.width * .3f, Screen.height * 0.06F), "Undo (" + PlayerPrefs.GetInt ("redos").ToString () + ")")) {
767 this.undo();
768 }
769
770
771 //Roation buttons
772
773
774 //GUI.Label(new Rect(Screen.width * .8f, Screen.height * 0.72F, Screen.width * .1f, Screen.height * 0.06F), "", "RotateButton");
775
776 //left button
777 if (GUI.Button(new Rect(Screen.width * .73f, Screen.height * 0.72F, Screen.width * .1f, Screen.height * 0.06F), "\t", "RotateButtonLeft")) {
778 this.rotateBlocks(Vector3.up);
779 }
780 //right button
781 if (GUI.Button(new Rect(Screen.width * .87f, Screen.height * 0.72F, Screen.width * .1f, Screen.height * 0.06F), "", "RotateButtonRight")) {
782 this.rotateBlocks(Vector3.down);
783 }
784 //up button
785 if (GUI.Button(new Rect(Screen.width * .8f, Screen.height * 0.675F, Screen.width * .1f, Screen.height * 0.06F), "", "RotateButtonUp")) {
786 this.rotateBlocks(Vector3.right);
787 }
788 //down button
789 if (GUI.Button(new Rect(Screen.width * .8f, Screen.height * 0.765F, Screen.width * .1f, Screen.height * 0.06F), "", "RotateButtonDown")) {
790 this.rotateBlocks(Vector3.left);
791 }
792 }
793 }
794
795 private void sizeGUI() {
796 this.currentGUISkin.GetStyle ("Label").fontSize = Mathf.CeilToInt(Screen.height * 0.04F);
797 this.currentGUISkin.GetStyle ("Button").fontSize = Mathf.CeilToInt(Screen.height * 0.04F);
798 this.currentGUISkin.GetStyle ("Subheader").fontSize = Mathf.CeilToInt(Screen.height * 0.05F);
799 this.currentGUISkin.GetStyle ("Toggle").fontSize = Mathf.CeilToInt(Screen.height * 0.04F);
800 this.currentGUISkin.GetStyle ("ToggleLabel").fontSize = Mathf.CeilToInt(Screen.height * 0.04F);
801 this.currentGUISkin.GetStyle ("ToggleLabelWarning").fontSize = Mathf.CeilToInt(Screen.height * 0.04F);
802
803 this.currentGUISkin.GetStyle ("SmallLabel").fontSize = Mathf.CeilToInt(Screen.height * 0.03F);
804
805 this.currentGUISkin.GetStyle ("BigLabel").fontSize = Mathf.CeilToInt(Screen.height * 0.06F);
806
807 this.currentGUISkin.GetStyle ("Toggle").padding.top = Mathf.CeilToInt(Screen.height * 0.04F);
808 this.currentGUISkin.GetStyle ("Toggle").padding.left = Mathf.CeilToInt(Screen.height * 0.04F);
809 }
810
811 private void saveHistory() {
812 int x,y,z;
813 string stringVal = "";
814
815 //create comma separated list of values
816 for (x = 0; x <= 2; x++) {
817 for (y = 0; y <= 2; y++) {
818 for (z = 0; z <= 2; z++) {
819 stringVal = stringVal + getBlockNumber(this.blocks[x,y,z]).ToString() + ",";
820 }
821 }
822 }
823 //add score and highest block to end of array
824 stringVal = stringVal + this.score.ToString() + "," + PlayerPrefs.GetInt ("game_highest_block").ToString();
825
826 PlayerPrefs.SetString ("redo_moves2",PlayerPrefs.GetString ("redo_moves1"));
827 PlayerPrefs.SetString ("redo_moves1",PlayerPrefs.GetString ("redo_moves0"));
828 PlayerPrefs.SetString ("redo_moves0",stringVal);
829
830 PlayerPrefs.Save();
831 }
832
833 private void undo() {
834 string[] positions = new string[27];
835 int myNum = 0;
836 char[] separator = {','};
837
838 if( PlayerPrefs.GetString ("game_status") != "game_over"
839 && PlayerPrefs.GetString ("redo_moves1") != ""
840 && PlayerPrefs.GetInt ("redos") > 0
841 ) {
842 positions = PlayerPrefs.GetString ("redo_moves1").Split (separator);
843 //loop through and set the block numbers for each block
844 for (int x = 0; x <= 2; x++) {
845 for (int y = 0; y <= 2; y++) {
846 for (int z = 0; z <= 2; z++) {
847 int.TryParse(positions[9*x+3*y+z], out myNum);
848 this.setBlockNumber(this.blocks[x,y,z],myNum);
849 }
850 }
851 }
852
853 //roll back the score
854 int.TryParse (positions[27], out myNum);
855 this.setScore (myNum);
856
857 //roll back the game_highest_block
858 int.TryParse (positions[28], out myNum);
859 PlayerPrefs.SetInt ("game_highest_block", myNum);
860
861 //move all the redo moves back
862 PlayerPrefs.SetString ("redo_moves0",PlayerPrefs.GetString ("redo_moves1"));
863 PlayerPrefs.SetString ("redo_moves1",PlayerPrefs.GetString ("redo_moves2"));
864 PlayerPrefs.SetString ("redo_moves2","");
865 PlayerPrefs.SetInt ("redos", PlayerPrefs.GetInt ("redos") - 1);
866 }
867 }
868
869 private void rotateBlocks(Vector3 direction) {
870 Transform block;
871 BlockScript blockScript;
872 Transform connector;
873 ConnectorScript connectorScript;
874 this.rotating = true;
875 for (int x = 0; x <= 2; x++) {
876 for (int y = 0; y <= 2; y++) {
877 for (int z = 0; z <= 2; z++) {
878 block = this.blocks[x,y,z];
879 block.GetComponent
880
881 for(int axis = 0; axis <=2; axis++) {
882 connector = this.connectors[x,y,z,axis];
883 connector.GetComponent
884 }
885 }
886 }
887 }
888 }
889
890 private void loadSavedGame() {
891 string[] positions = new string[27];
892 int positionNum = 0;
893 char[] separator = {','};
894 positions = PlayerPrefs.GetString ("redo_moves0").Split (separator);
895
896 for (int x = 0; x <= 2; x++) {
897 for (int y = 0; y <= 2; y++) {
898 for (int z = 0; z <= 2; z++) {
899 int.TryParse(positions[9*x+3*y+z], out positionNum);
900 this.setBlockNumber(this.blocks[x,y,z],positionNum);
901 }
902 }
903 }
904
905
906 this.adjustConnectors ();
907 this.setScore (PlayerPrefs.GetInt ("score"));
908
909 }
910}
911
912
File name: XmlUtils.cs
Copy
45 public static bool TryGetInt(this XmlNode node, string key, out int value)
46 {
47 value = default(int);
48 var attr = node.Attributes[key];
49 bool parsed = false;
50 if (attr != null)
51 {
52 parsed = int.TryParse(attr.Value, System.Globalization.NumberStyles.Integer, System.Globalization.CultureInfo.InvariantCulture, out value);
53 }
54
55 return parsed;
56 }
File name: XmlUtils.cs
Copy
58 public static bool TryGetFloat(this XmlNode node, string key, out float value)
59 {
60 value = default(float);
61 var attr = node.Attributes[key];
62 bool parsed = false;
63 if (attr != null)
64 {
65 parsed = float.TryParse(attr.Value, System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture, out value);
66 }
67
68 return parsed;
69 }
File name: frmOrder.cs
Copy
163 public void Calculate()
164 {
165 if (txtTaxPer.Text != "")
166 {
167 txtTaxAmt.Text = Convert.ToInt32((Convert.ToInt32(txtSubTotal.Text) * Convert.ToDouble(txtTaxPer.Text) / 100)).ToString();
168
169 }
170 if (txtDiscountPer.Text != "")
171 {
172 txtDiscountAmount.Text = Convert.ToInt32(((Convert.ToInt32(txtSubTotal.Text) + Convert.ToInt32(txtTaxAmt.Text)) * Convert.ToDouble(txtDiscountPer.Text) / 100)).ToString();
173 }
174 int val1 = 0;
175 int val2 = 0;
176 int val3 = 0;
177 int val4 = 0;
178 int val5= 0;
179 int.TryParse(txtTaxAmt.Text, out val1);
180 int.TryParse(txtSubTotal.Text, out val2);
181 int.TryParse(txtDiscountAmount.Text, out val3);
182 int.TryParse(txtTotal.Text, out val4);
183 int.TryParse(txtTotalPayment.Text, out val5);
184 val4 = val1 + val2 - val3;
185 txtTotal.Text = val4.ToString();
186 int I = (val4 - val5);
187 txtPaymentDue.Text = I.ToString();
188
189
190 }
File name: frmOrder.cs
Copy
191 private void txtSaleQty_TextChanged(object sender, EventArgs e)
192 {
193 int val1 = 0;
194 int val2 = 0;
195 int.TryParse(txtPrice.Text, out val1);
196 int.TryParse(txtSaleQty.Text, out val2);
197 int I = (val1 * val2);
198 txtTotalAmount.Text = I.ToString();
199 }
File name: frmOrder.cs
Copy
565 private void txtTotalPayment_TextChanged(object sender, EventArgs e)
566 {
567 int val1 = 0;
568 int val2 = 0;
569 int.TryParse(txtTotal.Text, out val1);
570 int.TryParse(txtTotalPayment.Text, out val2);
571 int I = (val1 - val2);
572 txtPaymentDue.Text = I.ToString();
573 }
File name: frmOrder.cs
Copy
575 private void txtTotalPayment_Validating(object sender, CancelEventArgs e)
576 {
577 int val1 = 0;
578 int val2 = 0;
579 int.TryParse(txtTotal.Text, out val1);
580 int.TryParse(txtTotalPayment.Text, out val2);
581 if (val2 > val1)
582 {
583 MessageBox.Show("Total Payment can't be more than grand total", "Input Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
584 txtTotalPayment.Text = "";
585 txtPaymentDue.Text = "";
586 txtTotalPayment.Focus();
587 return;
588 }
589 }
File name: frmOrder.cs
Copy
591 private void txtSaleQty_Validating(object sender, CancelEventArgs e)
592 {
593
594 int val1 = 0;
595 int val2 = 0;
596 int.TryParse(txtAvailableQty.Text, out val1);
597 int.TryParse(txtSaleQty.Text, out val2);
598 if (val2 > val1)
599 {
600 MessageBox.Show("Selling quantities are more than available quantities", "Input Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
601 txtSaleQty.Text = "";
602 txtTotalAmount.Text = "";
603 txtSaleQty.Focus();
604 return;
605 }
606 }
TryParse 144 lượt xem
Gõ tìm kiếm nhanh...