Skip to content

kbengine/kbengine_unity3d_plugins

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Dec 28, 2019
1408f2f · Dec 28, 2019
Jan 16, 2019
Aug 29, 2018
Aug 11, 2015
Jan 24, 2018
Jan 29, 2018
Aug 29, 2018
Nov 8, 2018
Dec 27, 2018
Dec 28, 2019
Jul 3, 2018
Dec 6, 2014
Dec 6, 2017
Dec 8, 2017
Mar 6, 2019
Dec 6, 2014
May 8, 2019
Sep 21, 2017
May 9, 2019
May 8, 2019
Nov 9, 2016
Dec 11, 2014
Aug 26, 2016
Apr 30, 2019
Dec 6, 2014

Repository files navigation

kbengine_unity3d_plugins

Usage

1: Create clientapp.cs
	using KBEngine;
	public class clientapp : KBEMain 
	{
	}

2: Implment the KBE defined entity (including the client part)
	See: kbengine\kbengine_demos_assets\scripts\entities.xml(hasClient="true") need to implment
		<Account hasClient="true"></Account>
		<Monster hasClient="true"></Monster>
		<Gate hasClient="true"></Gate>
		<Space/>

		public class Account : KBEngine.Entity 
		{
			// entity initialization
			public override void __init__()
			{
			}
		}

	Call entity server method
		entity.baseCall("base_func", 1, "arg2", "argN")
		entity.cellCall("cell_func", 1, "arg2", "argN")

3: Monitor KBE-plugins event
	For example:
		public class UI : MonoBehaviour
		{
			void Start () 
			{
				KBEngine.Event.registerOut("onConnectionState", this, "onConnectionState");
			}

			public void onConnectionState(bool success)
			{
				// KBE-plugins event fired
			}
		}

4: Fire events to the KBE-plugins
	For example:
		KBEngine.Event.fireIn("login", "stringAccount", "stringPasswd", System.Text.Encoding.UTF8.GetBytes("kbengine_unity3d_demo"));

KBE-Plugin fire-out events(KBE => Unity):

Entity events:
	onEnterWorld
		Description: 
			Entity enter the client-world.

		Event-datas: 
			Enity
			

	onLeaveWorld
		Description: 
			Entity leave the client-world.

		Event-datas: 
			Enity

	onEnterSpace
		Description: 
			Player enter the new space.

		Event-datas: 
			Enity

	onLeaveSpace
		Description: 
			Player enter the space.

		Event-datas: 
			Enity

	onCreateAccountResult
		Description: 
			Create account feedback results.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

			bytes: datas
				If you use third-party account system, the system may fill some of the third-party additional datas.

	onControlled
		Description: 
			Triggered when the entity is controlled or out of control.

		Event-datas: 
			Enity
			bool: isControlled

	onLoseControlledEntity
		Description: 
			Lose controlled entity.

		Event-datas: 
			Enity

	set_position
		Description: 
			Sets the current position of the entity.

		Event-datas: 
			Enity

	set_direction
		Description: 
			Sets the current direction of the entity.

		Event-datas: 
			Enity

	updatePosition
		Description: 
			The entity position is updated, you can smooth the moving entity to new location.

		Event-datas: 
			Enity

Protocol events:
	onVersionNotMatch
		Description: 
			Engine version mismatch.

		Event-datas: 
			string: clientVersion
			string: serverVersion

	onScriptVersionNotMatch
		Description: 
			script version mismatch.

		Event-datas: 
			string: clientScriptVersion
			string: serverScriptVersion

	Loginapp_importClientMessages
		Description: 
			Importing the message protocol for loginapp and client.

		Event-datas: 
			No datas.

	Baseapp_importClientMessages
		Description: 
			Importing the message protocol for baseapp and client.

		Event-datas: 
			No datas.

	Baseapp_importClientEntityDef
		Description: 
			Protocol description for importing entities.

		Event-datas: 
			No datas.

Login and Logout status:
	onLoginBaseapp
		Description: 
			Login to baseapp.

		Event-datas: 
			No datas.

	onReloginBaseapp
		Description: 
			Relogin to baseapp.

		Event-datas: 
			No datas.

	onKicked
		Description: 
			Kicked of the current server.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onLoginFailed
		Description: 
			Login failed.

		Event-datas: 
			uint16: retcode
			bytes: serverdatas
				http://kbengine.org/docs/configuration/server_errors.html

	onLoginBaseappFailed
		Description: 
			Login baseapp failed.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onReloginBaseappFailed
		Description: 
			Relogin baseapp failed.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onReloginBaseappSuccessfully
		Description: 
			Relogin baseapp success.

		Event-datas: 
			No datas.

Space events:
	addSpaceGeometryMapping
		Description: 
			The current space is specified by the geometry mapping.
			Popular said is to load the specified Map Resources.

		Event-datas: 
			string: resPath

	onSetSpaceData
		Description: 
			Server spaceData set data.

		Event-datas: 
			int32: spaceID
			string: key
			string value

	onDelSpaceData
		Description: 
			Server spaceData delete data.

		Event-datas: 
			int32: spaceID
			string: key

Network events:
	onConnectionState
		Description: 
			Status of connection server.

		Event-datas: 
			bool: success or fail

	onDisconnected
		Description: 
			Status of connection server.

		Event-datas: 
			No datas.

Download events:
	onStreamDataStarted
		Description: 
			Start downloading data.

		Event-datas: 
			uint16: resouce id
			uint32: data size
			string: description

	onStreamDataRecv
		Description: 
			Receive data.

		Event-datas: 
			uint16: resouce id
			bytes: datas

	onStreamDataCompleted
		Description: 
			The downloaded data is completed.

		Event-datas: 
			uint16: resouce id

KBE-Plugin fire-in events(Unity => KBE):

createAccount
		Description: 
			Create new account.

		Event-datas: 
			string: accountName
			string: password
			bytes: datas
				Datas by user defined.
				Data will be recorded into the KBE account database, you can access the datas through the script layer.
				If you use third-party account system, datas will be submitted to the third-party system.
			

login
		Description: 
			Login to server.

		Event-datas: 
			string: accountName
			string: password
			bytes: datas
				Datas by user defined.
				Data will be recorded into the KBE account database, you can access the datas through the script layer.
				If you use third-party account system, datas will be submitted to the third-party system.

reloginBaseapp
		Description: 
			Relogin to baseapp.

		Event-datas: 
			No datas.

resetPassword
		Description: 
			Reset password.

		Event-datas: 
			string: accountName

newPassword
		Description: 
			Request to set up a new password for the account.
			Note: account must be online

		Event-datas: 
			string: old_password
			string: new_password

bindAccountEmail
		Description: 
			Request server binding account Email.
			Note: account must be online

		Event-datas: 
			string: emailAddress

About

This client-plugins-project is written for kbengine(a MMOG engine of server)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages