CreateClan.as 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. import flash.external.*;
  2. import gfx.controls.TextInput;
  3. import gfx.controls.TextArea;
  4. import gfx.controls.Button;
  5. import mx.utils.Delegate;
  6. import gfx.controls.CheckBox;
  7. class Screens.CreateClan extends Screen
  8. {
  9. private var mcProfileImage:MovieClip;
  10. private var tiName:TextInput;
  11. private var taDescription:TextArea;
  12. private var cbInvitationOnly:CheckBox;
  13. private var btnCancel:Button;
  14. private var btnCreate:Button;
  15. private var btnChangeLogo:Button;
  16. public function CreateClan()
  17. {
  18. ConsoleWindow.Trace("Constructing CreateClan");
  19. mScreenId = ScreenID.CLAN_CREATE;
  20. mScreenTabId = ScreenTab.ID_CLANS;
  21. }
  22. public function VOnFinishedLoading():Void
  23. {
  24. //Add click event for buttons
  25. btnCancel.addEventListener("click", this, "Cancel");
  26. btnCreate.addEventListener("click", this, "Create");
  27. btnChangeLogo.addEventListener("click", this, "ChangeLogo");
  28. //Add callbacks for C++
  29. ExternalInterface.addCallback("c2f_Clans_Create", this, c2f_Clans_Create);
  30. super.VOnFinishedLoading();
  31. }
  32. public function OnShow():Void
  33. {
  34. }
  35. public function Cancel():Void
  36. {
  37. LobbyInterface.Instance.ShowScreen( ScreenID.CLAN_ROOT );
  38. }
  39. public function Create():Void
  40. {
  41. ExternalInterface.call("f2c_Clans_Create", tiName.text,
  42. false,
  43. cbInvitationOnly.selected,
  44. taDescription.text);
  45. tiName.text = "";
  46. taDescription.text = "";
  47. cbInvitationOnly.selected = false;
  48. }
  49. public function c2f_Clans_Create(resultIdentifier:String):Void
  50. {
  51. switch (resultIdentifier)
  52. {
  53. case "PROFANITY_FILTER_CHECK_FAILED":
  54. break;
  55. case "Clans_Create_CLAN_HANDLE_IN_USE":
  56. break;
  57. case "DATABASE_CONSTRAINT_FAILURE":
  58. break;
  59. case "Clans_Create_ALREADY_IN_A_CLAN":
  60. break;
  61. case "SUCCESS":
  62. LobbyInterface.Instance.ShowScreen( ScreenID.CLAN_MY_CLANS );
  63. break;
  64. default:
  65. break;
  66. }
  67. if ( resultIdentifier != "SUCCESS" )
  68. {
  69. LobbyInterface.Instance.CreateMessageBox( resultIdentifier );
  70. }
  71. }
  72. public function ChangeLogo():Void
  73. {
  74. LobbyInterface.Instance.ShowScreen( ScreenID.CHANGE_PHOTO );
  75. }
  76. }
粤ICP备19079148号