class DCubeHooker extends Computers;

state On
{
	function Tick(float deltaTime)
	{
		Global.Tick(deltaTime);

		if (bOn)
		{
			if ((termwindow == None) && (Level.NetMode == NM_Standalone))
         {
				GotoState('Off');
         }            
         if (curFrobber == None)
         {
            GotoState('Off');
         }
         else if (VSize(curFrobber.Location - Location) > 1500)
         {
            log("Disabling computer "$Self$" because user "$curFrobber$" was too far away");
			//Probably should be "GotoState('Off')" instead, but no good way to test, so I'll leave it alone.
            curFrobber = None;
         }
		}
	}

Begin:
	if (!bOn)
	{
      AdditionalActivation(curFrobber);
		bAnimating = True;
		//PlayAnim('Activate');
		//FinishAnim();
		bOn = True;
		bAnimating = False;
		ChangePlayerVisibility(False);
      TryInvoke();
	}
}

// ----------------------------------------------------------------------
// state Off
// ----------------------------------------------------------------------

auto state Off
{
Begin:
	if (bOn)
	{
      AdditionalDeactivation(curFrobber);
		ChangePlayerVisibility(True);
		bAnimating = True;
		//PlayAnim('Deactivate');
		//FinishAnim();
		bOn = False;
		bAnimating = False;
		if (bLockedOut)
			BeginAlarm();

		// Resume any datalinks that may have started while we were 
		// in the computers (don't want them to start until we pop back out)
		ResumeDataLinks();
      curFrobber = None;
	}
}




defaultproperties
{
    CompInUseMsg="The notes are being read by %s."
    terminalType=Class'TerminalHooker'
    lockoutDelay=60.00
     Mesh=Mesh'ContenderStuff.Notepad'
    UserList=(accountNumber="USER",PIN="USER",balance=757935360),
    ItemName="Notes"
    Physics=PHYS_None
     CollisionRadius=16.50000
     CollisionHeight=1.00000
     MultiSkins(0)=Texture'CoreTexWood.Wood.ClenMedmChery_A'
     MultiSkins(1)=Texture'NailageEffects.NotePadTex1'
    BindName="ComputerPersonal"
}

