Page 1 of 1

Getting OpenSpace to initialize in actionscript

Posted: 26 Jul 2011, 19:59
by JimDaniel
I'm creating a game using the FlashBuilder 4.0 IDE but not using any of the Flex MXML, everything is written in AS3. I've been able to get SmartFox 2x to connect correctly & even create a room. Now I need to add in OpenSpace to the code. I've looked at the os1Example code carefully and as fat as I can tell I've done everything correctly but I don't get the OpenSpaceEvent.INITIALIZED event.

I'd really like to know what I've left out. Pleas just don,t say look at the Client API, give me a citation to where to look exactly.

Bellow here is the code segments

Code: Select all

	import com.smartfoxserver.openspace.components.flash.OpenSpace;
	import com.smartfoxserver.openspace.engine.control.events.OpenSpaceEvent;
	import com.smartfoxserver.openspace.engine.model.other.MapCenteringParams;
	import com.smartfoxserver.openspace.shared.control.events.LoggerEvent;

Code: Select all

	_sfs = new SmartFox(true);
	_sfs.debug = true;
	_openSpace = new OpenSpace();

Code: Select all

		private function onLogin(evnt:SFSEvent):void
		{
			if(mLoginScreen != null)
			{
				mUserName = mLoginScreen.UserNameInput.text;
				mUserPassword = mLoginScreen.PasswordInput.text;
				Display.removeChild(Display.getChildByName("LoginScreen"));
			}
			dTrace("Login successful - UserName: "+ mUserName + " & Password " + mUserPassword);
			
			mEventManager.removeEventListener(Display, TextEvent.TEXT_INPUT, onLoginInputChange, true);
			mEventManager.removeEventListener(Display, TextEvent.TEXT_INPUT, onLoginInputChange, true);
			_sfs.addEventListener(SFSEvent.ROOM_ADD, onRoomCreated);
			_sfs.addEventListener(SFSEvent.ROOM_CREATION_ERROR, onRoomCreationError);
			mMainUI.mainScreen.visible = true;
			
			Display.addChild(_openSpace);
			initializeOpenSpace();
			
}

Posted: 27 Jul 2011, 09:01
by Bax
Maybe you just didn't report it in your code snippets, but I don't see where you add the listener to the INITIALIZE event.
In case you added it, check the client and server logs to make sure no error are thrown.

Opps, your right..here are the missing code

Posted: 27 Jul 2011, 13:44
by JimDaniel

Code: Select all


		private function initializeOpenSpace():void
		{
			dTrace("Calling initializeOpenSpace()");
			_openSpace.addEventListener(OpenSpaceEvent.INITIALIZED, onOpenSpaceInitialized)
			_openSpace.addEventListener(OpenSpaceEvent.RESET, onOpenSpaceReset)
			
			_openSpace.init(_sfs);
		}
.
.
.
		/**
		 * OpenSpace initialization completed; nothing to do.
		 */
		private function onOpenSpaceInitialized(evt:OpenSpaceEvent):void
		{
			dTrace("OpenSpace.INITIALIZED event received");
		}
		
		/**
		 * OpenSpace reset: update application interface accordingly.
		 */
		private function onOpenSpaceReset(evt:OpenSpaceEvent):void
		{
			dTrace("OpenSpace.RESET event received");
		}		
Will look at the logs too.

Log checked

Posted: 27 Jul 2011, 14:12
by JimDaniel
Just checked the logs and no errors are being thrown, but I did get this warning:

27 Jul 2011 10:18:23,343 WARN [com.smartfoxserver.v2.controllers.ExtensionController-1] v2.controllers.ExtensionController -
com.smartfoxserver.v2.exceptions.SFSExtensionException: No extensions can be invoked: { Zone: WildFronter }, RoomId: None
com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:120)
com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Solved this problem, I forgot to add the opensource extension to the zone definitions.

Got it working!

Posted: 27 Jul 2011, 17:54
by JimDaniel
Once I cleaned out everything and restarted the sever process I got it working. Now onto learning how to create the dynamic room and get the maps to load.