Chat Window

Discussion in 'Scripting' started by Vimalakirti, Oct 22, 2009.

  1. Vimalakirti

    Vimalakirti

    Member

    Joined:
    Oct 12, 2009
    Messages:
    752
    Dear Friends,

    I'm not sure if this should be here or in GUI, but it's definitely a scripting problem and I'm stuck.

    I'm trying to make a chat entry window in the style of WoW, activated and de-activated by pressing Return. I want to press return, have a line entry window appear with the cursor activated, type in a line, press enter again, then process that text in a separate function ("TextEnter").

    This is the script in my character controller:
    Code (csharp):
    1.  
    2. public var commandLine:String = "";
    3. function OnGUI () {
    4. entering = GetComponent(TextEnter);
    5. if (Event.current.Equals (Event.KeyboardEvent ("return")) )
    6.             {
    7.          commandLine = GUI.TextField (Rect (10, 80, 600, 20), commandLine, 25);    
    8.          if (Event.current.Equals (Event.KeyboardEvent ("return")) )
    9.          {
    10.             print("going to the function");
    11.             entering.EnterText();
    12.          }
    13.          }
    14. }  

    and this is the script "TextEnter" with the function "EnterText":

    Code (csharp):
    1. function EnterText(){
    2.             print("Executing function TextEnter!");
    3. };
    What happens is this:
    In game, debug is quiet at first. When I press enter, debug says "going to the function" and "Executing function TextEnter!" both together immediately. The text entry window does not appear.

    Eventually, I'll bang my head against my keyboard enough so that I'll either pass out, or it will break, so the problem will get solved eventually.

    Thanks!
     
  2. Dreamora

    Dreamora

    Member

    Joined:
    Apr 5, 2008
    Messages:
    26,589
    see your other thread