Public feed #527148

Mine

public text v1 · immutable
Raw Edit
·published 2007-06-01 05:46 UTC
rendered paste body

GAME_TIME_MODIFIER# = 1.0
CREATE_SOUND_TYPE_TABLE(1000,20)
GOSUB SETUPBAGSOUND
CREATE_TEXTURE_TYPE_TABLE(10000,32)
SETUP_TERRAIN_SYSTEM(1089800,4,0,256,16,256)
CREATE_MUSIC_TABLE(8)
CREATE_TAG_TABLE(500000,500)
CREATE_COUNTER_TABLE(500500,50)
CREATE_HUD_TABLE(100,10)
CREATE_HUD_ADDON_TABLE(10)
CREATE_IMAGE_ANIMATIONS_TABLE(1000,64)
CREATE_PARTICLE_BASIC_SYSTEM_TABLE(4500,10,64)
SET_OBJECT_MEMORY_SIZE(800000,25)
SET_OBJECT_SYSTEM_SIZE(10000,350,10)
CREATE_DYNAMIC_OBJECT_TYPE("Client",800,-1)

CAMERA_SET_PARAMETERS(180,20,50)
SETUP_FADE_SCREEN(99999)
SET_SCREEN_NORMAL()










CREATE_VIDEO_ANIMATION_TABLE(2)
`CREATE_VIDEO_ANIMATION("INTRO","ONEKA_INTRO.WMV",1)
`ADD_TO_VIDEO_QUEUE("INTRO")


PLAY_VIDEO_QUEUE()
LOAD_FROM_QUEUE(0)


DO
	PRE_ENGINE()
	IF KEY_FUNCTION_LOCK_CHECK("ESC KEY") = 1
		SKIP_VIDEO()
	ENDIF
	TEMP_STATUS = VIDEO_SYSTEM()
	IF TEMP_STATUS = 4
		DELETE_ALL_VIDEO_ANIMATION()
		EXIT
	ENDIF
	POST_ENGINE()
	SYNC
LOOP



COLOR BACKDROP RGB(255,255,255)


GLOBAL LOGIN_BUTTON AS INTEGER
GLOBAL REGISTER_BUTTON AS INTEGER
GLOBAL LOGIN_STATUS$ AS STRING
GLOBAL LOGIN_MODE AS INTEGER
GLOBAL LOGIN_VERIFIED AS BOOLEAN

GLOBAL TEAAMP_X AS INTEGER
GLOBAL TEAAMP_Y AS INTEGER


CREATE_HUD_TABLE(1000,40)
CREATE_HUD_ADDON_TABLE(20)
MAKE_USER_INPUT_BOX_TABLE(5)
TEMP_CREATE_LOGIN_SCREEN()


TEMP = FIND_HUD("LOGINBOX")
TEMP_X = HUD(TEMP).X
TEMP_Y = HUD(TEMP).Y

SYS_AUTHORIZATION_CODE$ = GENERATE_SYSTEM_AUTHORIZATION_CODE(6)
GLOBAL IP_ADDRESS$ AS STRING
GLOBAL PACKET_SEPERATOR AS INTEGER
IP_ADDRESS$ = IP_ADDRESS()
ENABLE_NETWORK(1,0,0)
NETWORK_CONNECT("MAIN","68.96.2.147",6000,1)
STORE_NETWORK_DATA("Client Data",9,1)

CREATE_NETWORK_SEPERATOR_TABLE(2)
CREATE_NETWORK_PACKET_TABLE(2)
PACKET_SEPERATOR = CREATE_NETWORK_SEPERATOR(CHR$(1))
CREATE_NETWORK_PACKET("OUT PACKET")

`CREATE_NETWORK_SEPERATOR_TABLE(1)
`CREATE_NETWORK_PACKET_TABLE(1)
NETWORK_SEND_PACKET("AC:01"+CHR$(1)+SYS_AUTHORIZATION_CODE$+CHR$(1)+IP_ADDRESS$,NETWORK_GET_CHANNEL("MAIN"))


GLOBAL LOGIN_SCREEN_MODE$ AS STRING
GLOBAL TEMP_LOGIN_SCREEN_LOCK AS BOOLEAN
GLOBAL TEMP_CHARACTER_LOGIN_SCREEN_MAKE AS BOOLEAN
GLOBAL TEMP_CHARACTER_CREATE_SCREEN_MAKE AS BOOLEAN
LOGIN_SCREEN_MODE$ = "ACCOUNT"

DIM CHARACTER_SCREEN_LIST(3) AS CHARACTER_SCREEN_LIST

DO
	PRE_ENGINE()
	`DE_TEXT("MOUSE POSITION X: "+STR$(MOUSE_POSITION_X)+" Y: "+STR$(MOUSE_POSITION_Y),0,0,0,0,0,255)
	IF LOGIN_SCREEN_MODE$ = "ACCOUNT"
		IF LOGIN_MODE = 2 OR 3
			DE_TEXT(GET_USER_INPUT_BOX_DATA("ACCOUNT",1),TEMP_X+24,TEMP_Y+85,0,0,0,255)
		ENDIF
		IF LOGIN_MODE = 1 OR 3
			DE_TEXT(GET_USER_INPUT_BOX_DATA("PASSWORD",1),TEMP_X+24,TEMP_Y+153,0,0,0,255)
		ENDIF
		LOGIN_SCREEN_HANDLER()
		SET_DE_TEXT(1)
		DE_TEXT(LOGIN_STATUS$,TEAAMP_X,TEAAMP_Y,0,0,0,255)
	ENDIF
	IF LOGIN_SCREEN_MODE$ = "CHARACTER LOGIN"
		CHARACTER_SELECT_HANDLER()
	ENDIF
	IF LOGIN_SCREEN_MODE$ = "CHARACTER CREATION"
		IF LOGIN_MODE = 2 OR 3
			DE_TEXT(GET_USER_INPUT_BOX_DATA("FIRST NAME",1),TEMP_X+24,TEMP_Y+85,0,0,0,255)
		ENDIF
		IF LOGIN_MODE = 1 OR 3
			DE_TEXT(GET_USER_INPUT_BOX_DATA("LAST NAME",1),TEMP_X+24,TEMP_Y+153,0,0,0,255)
		ENDIF
		SET_DE_TEXT(1)
		DE_TEXT(LOGIN_STATUS$,0,0,0,0,0,255)
		CHARACTER_CREATE_HANDLER()
	ENDIF
	IF LOGIN_SCREEN_MODE$ = "END"
		EXIT
	ENDIF
	POST_ENGINE()
	SYNC
LOOP









SET_SCREEN_BLACK(1)









SET_DE_TEXT(1)
COLOR BACKDROP RGB(0,0,0)
GLOBAL PING_DELAY AS INTEGER

A = TERRAIN_SYSTEM_CREATE_TERRAIN("Media/001.DEM","HIGH",AMOUNT*X,0,AMOUNT*Y)
TEX = CREATE_TEXTURE_TYPE("TEXTURES","ROCK_001.BMP","DETAIL/"+"ROCK_001.BMP")
Terrian_Number = TERRAIN_SYSTEM_TERRAIN_DATA(A).OBJECT_NUMBER

SIZESS = 1000000
DIVVDER = 10
CAMERA_SIGHT = SIZESS/DIVVDER
SET CAMERA RANGE 1,CAMERA_SIGHT
SETUP_SKY_SYSTEM(10011010)
SET_ATMOSPHERE_HEIGHT(5000,2000)
MAKE_SKY(SIZESS/DIVVDER,"Gradient.png")
MAKE_SKY_STARS(SIZESS/DIVVDER,"Stars.png",400/DIVVDER)
CLOUD1 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_001.PNG","CLOUDS/"+"CLOUD_001.PNG")
CLOUD2 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_002.PNG","CLOUDS/"+"CLOUD_002.PNG")
CLOUD3 = CREATE_TEXTURE_TYPE("CLOUDS","CLOUD_003.PNG","CLOUDS/"+"CLOUD_003.PNG")
MAKE_SKY_CLOUDS(SIZESS/12,CLOUD1,10/DIVVDER,CLOUD2,20/DIVVDER,CLOUD3,30/DIVVDER)
SET_SKY_CLOUD_THICKNESS(255,255,255)
SET_SKY_CLOUDS(0.00090)
SET OBJECT EMISSIVE WRLD_SYS_SKY_OBJECT,RGB(0,0,255)
SET OBJECT EMISSIVE WRLD_SYS_STARS_OBJECT,RGB(255,255,255)

CREATE_MUSIC("WORLD","MUSIC/WORLD.MP3",100,2.5,2.5)
CREATE_MUSIC("BATTLE 1","MUSIC/BATTLE_MUSIC_01.MP3",100,2.5,2.5)
CREATE_MUSIC("BATTLE 2","MUSIC/BATTLE_MUSIC_02.MP3",100,2.5,2.5)
CREATE_MUSIC("BATTLE 3","MUSIC/BATTLE_MUSIC_03.MP3",100,2.5,2.5)
CREATE_MUSIC("BATTLE 4","MUSIC/BATTLE_MUSIC_04.MP3",100,2.5,2.5)
ADD_OBJECT_TO_MEMORY("Media/Test.x","Male Model","Client",1)

LOAD_HUD_FILE(SYS_HUD_LOCATION$)


HIDE_ALL_HUDS()
TEMP_LOADING_SIZE = LOADING_QUEUE_SIZE
DO
	PRE_ENGINE()
	SET_SCREEN_BLACK(1)
	TEMP_CURRENT_LOADED = GET_LOADING_QUEUE_SIZE(0)
	TEMP_PERCENT_LOADED = (((TEMP_CURRENT_LOADED+0.0) / (TEMP_LOADING_SIZE+0.0)) * 100)
	D3D_STARTTEXT
	D3D_COLOR 255,255,255,255
	D3D_TEXT DE_CONSOLE_TEXT_NUM,0,0,0,"Percent loaded: "+STR$(TEMP_PERCENT_LOADED)+"%"
	D3D_TEXT DE_CONSOLE_TEXT_NUM,0,15,0,"Loaded "+STR$(TEMP_CURRENT_LOADED)+" of "+STR$(TEMP_LOADING_SIZE)+" files."
	D3D_ENDTEXT
	IF LOADING_COMPLETE = 1
		EXIT
	ENDIF
	LOAD_FROM_QUEUE(1)
	POST_ENGINE()
	SYNC
LOOP
SHOW_ALL_HUDS()

MAIN_OBJ = MAKE_DYNAMIC_OBJECT(CLIENT.FIRST_NAME$+" "+CLIENT.LAST_NAME$,"Client","Male Model","Client")
POSITION_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ,CLIENT.X#,GET TERRAIN GROUND HEIGHT(Terrian_Number,CLIENT.X#,CLIENT.Z#),CLIENT.Z#)
SET_Y_ROTATE_DYNAMIC_OBJECT(MAIN_OBJ,CLIENT.ANGLE_Y#)

CAMERA_FOLLOW_OBJECT(GET_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ),1)
CREATE_TAG(GET_DYNAMIC_OBJECT_NUMBER(MAIN_OBJ),CLIENT.FIRST_NAME$+" "+CLIENT.LAST_NAME$,RGB(255,255,255),"",0,5)
CLIENT.OBJECT_NUMBER = MAIN_OBJ


MAKE_TEXT_SYSTEM(1,100)
CREATE_TEXT_SYSTEM_TYPE("MAIN",3,9*SYS_HUD_RESOLUTION_MODIFIER_Y#,840*SYS_HUD_RESOLUTION_MODIFIER_X#,5)

GLOBAL ASSEMBLED_OUT_PACKET$ AS STRING
NETWORK_SEND_PACKET("AC:IG",NETWORK_GET_CHANNEL("MAIN"))
PRE_GAME_LOOP_FIX()


DO
	IF DE_CONSOLE_SHOWENGINE_DELAY = 1
		TIME1 = TIMER()
	ENDIF
	PRE_ENGINE()
	IF DE_CONSOLE_SHOWENGINE_DELAY = 1
		TIME2 = TIMER()
		PRE_ENGINE_WAIT = TIME2 - TIME1
	ENDIF
	IF DE_CONSOLE_ACTIVE = 0
		T = 0
		TIN = 15
		DE_TEXT("Daikanu Online Client testing",0,0,255,255,255,255)
		T = T+TIN
		DE_TEXT("Ping: "+STR$(PING_DELAY)+" Packets in: "+STR$(SYS_NETWORK_DATA_PACKETS_IN)+" out: "+STR$(SYS_NETWORK_DATA_PACKETS_OUT),0,T,255,255,255,255)
		T = T+TIN
		DE_TEXT("Position X#:"+STR$(GET_X_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER))+" Z#:"+STR$(GET_Z_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER)),0,T,255,255,255,255)
		T = T+TIN
		IF DE_CONSOLE_SHOWFPS = 1
			DE_TEXT("Frames per second: "+str$(FRAME_RATE),0,T,255,255,255,255)
			T = T+TIN
		ENDIF
		IF DE_CONSOLE_SHOWPOLY = 1
			DE_TEXT("Polygons on screen: "+str$(POLYGONS_ON_SCREEN),0,T,255,255,255,255)
			T = T+TIN
		ENDIF
		IF DE_CONSOLE_SHOWENGINE_DELAY = 1
			DE_TEXT("Pre engine time delay: "+STR$(PRE_ENGINE_WAIT),0,T,255,255,255,255)
			T = T+TIN
			DE_TEXT("Post engine time delay: "+STR$(POST_ENGINE_WAIT),0,T,255,255,255,255)
			T = T+TIN
		ENDIF
			IF DE_CONSOLE_SHOWCAM_POSITION = 1
			DE_TEXT("Camera position X: "+STR$(CAMERA POSITION X())+" Y: "+STR$(CAMERA POSITION Y())+" Z: "+STR$(CAMERA POSITION Z()),0,T,255,255,255,255)
			T = T+TIN
		ENDIF
	ENDIF	
	IF SYSTEM_TIME >= PING_WAIT
		CLIENT.PACKET_PING = 1
		PING_WAIT = SYSTEM_TIME + 10000
	ENDIF
	TEMP = FIND_HUD("Chat Box")
	SET_TEXT_TYPE_POSITION("MAIN",HUD_POSITION_X(TEMP)+8,(HUD_POSITION_Y(TEMP)+HUD_SCALE_Y(TEMP))-6)
	SET_TEXT_TYPE_ALPHA("MAIN",GET_HUD_CURRENT_FADE(TEMP))
	CLIENT.X# = GET_X_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER)
	CLIENT.Z# = GET_Z_POSITION_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER)
	CLIENT.ANGLE_Y# = GET_Y_ANGLE_DYNAMIC_OBJECT(CLIENT.OBJECT_NUMBER)
	
	
	CLIENT_MOVEMENT()
	
	IF CUR_SCANCODE <> 0
		IF DE_CONSOLE_OVERRIDE = 0
			HANDLE_MISC_CONTROLS()
		ENDIF
		
		IF KEY_FUNCTION_LOCK_CHECK("CONSOLE")
			DE_CONSOLE_CALL = 1
		ENDIF
	ENDIF
	

	
	
	ASSEMBLE_OUT_PACKET()
	IF GET_NETWORK_PACKET("OUT PACKET") <> ""
		NETWORK_SEND_PACKET(GET_NETWORK_PACKET("OUT PACKET"),NETWORK_GET_CHANNEL("MAIN"))
	ENDIF
	
	
	UPDATE TERRAIN
	IF DE_CONSOLE_SHOWENGINE_DELAY = 1
		TIME1 = TIMER()
	ENDIF
	POST_ENGINE()
	IF DE_CONSOLE_SHOWENGINE_DELAY = 1
		TIME2 = TIMER()
		POST_ENGINE_WAIT = TIME2 - TIME1
	ENDIF
	SYNC
LOOP
END