home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Format (Spanish) 3
/
PCF3.iso
/
formula
/
starwar.sx_
/
starwar.sx
Wrap
Text File
|
1996-06-24
|
4KB
|
152 lines
///////////////////////////////////
// Star Warriors select destroyer
//
temp = new object list
call set_camera_position
call set_lights
mat = new material color 128,128,128
//call make_fighter1
//call make_fighter2
call make_fighter3
clear window
render mode RENDER_QUICK
return
initialize:
temp = new object list
rect = get element "rectangle"
render window rect.xpos, rect.ypos size rect.xlen, rect.ylen
call set_realtime_camera_position
call set_lights
mat = new material color 128,128,128
call make_fighter1
call make_fighter2
call make_fighter3
chosen_fighter = fighter2
render_mode = RENDER_QUICK
draw_angle: x, y
xa = (GRAPHICS_WINDOW_XMAX/2 - x) / GRAPHICS_WINDOW_XMAX * 4
ya = (GRAPHICS_WINDOW_YMAX/2 - y) / GRAPHICS_WINDOW_YMAX * 4
rotate y, xa
rotate x, ya
position mesh chosen_fighter
render background color 0,0,0
render mesh chosen_fighter mode render_mode
choose_fighter: ftr
switch ftr
case 1
chosen_fighter = fighter1
case 2
chosen_fighter = fighter2
case 3
chosen_fighter = fighter3
xray_view: state
if state then render_mode = RENDER_WIRE
else render_mode = RENDER_QUICK
set_realtime_camera_position:
position 0,0,-100
set camera
set_camera_position:
position 0,40,0
direction 0,0,0
set camera
set_lights:
position 0,0,-30
my_light = new light
make_fighter1:
fighter1 = new object list
p1 = new polygon 0,0,-20; 0,0,10; 10,-5,10 material mat
p2 = new polygon 0,0,-20; 0,0,10; -10,-5,10 material mat
p3 = new polygon 0,0,-20; 0,0,10; -10,5,10 material mat
p4 = new polygon 0,0,-20; 0,0,10; 10,5,10 material mat
p5 = new polygon 0,0,-20; 0,5,-10; 0,0,10 material mat
fighter1 push @p1
fighter1 push @p2
fighter1 push @p3
fighter1 push @p4
fighter1 push @p5
$p1.name = "f1p1"
$p2.name = "f1p2"
$p3.name = "f1p3"
$p4.name = "f1p4"
$p5.name = "f1p5"
load "x3_wing1.gif" bitmap t1
load "x3_wing3.gif" bitmap t2
if GRAPHICS_WINDOW_BITS == 8
compose bitmap t1
compose bitmap t2
remap bitmap t1
remap bitmap t2
temp remove all
temp push @p1
temp push @p2
temp push @p3
temp push @p4
texture temp bitmap t1 planar y
temp remove all
temp push @p5
texture temp bitmap t2 planar x
make_fighter2:
debug "fighter 2"
fighter2 = new object list
p1 = new polygon 10,0,-10; 10,10,-6; 10,10,6; 10,0,10; 10,-10,6; 10,-10,-6 material mat
p2 = new polygon -10,0,-10; -10,10,-6; -10,10,6; -10,0,10; -10,-10,6; -10,-10,-6 material mat
p3 = new polygon 10,-5,0; -10,-5,0; -10,5,0; 10,5,0 material mat
fighter2 push @p1
fighter2 push @p2
fighter2 push @p3
$p1.name = "f2p1"
$p2.name = "f2p2"
$p3.name = "f2p3"
load "x3_tie1.gif" bitmap t1
load "x3_tie2.gif" bitmap t2
if GRAPHICS_WINDOW_BITS == 8
compose bitmap t1
compose bitmap t2
remap bitmap t1
remap bitmap t2
temp remove all
temp push @p1
temp push @p2
texture temp bitmap t1 planar x
texture p3 bitmap t2
make_fighter3:
fighter3 = new object list
p1 = new polygon 0,10,0; 0,10,10; 0,0,10; 0,0,-20 material mat
p2 = new polygon 0,0,-20; 15,-5,0; 15,-5,10; 0,0,10 material mat
p3 = new polygon 0,0,-20; -15,-5,0; -15,-5,10; 0,0,10 material mat
fighter3 push @p1
fighter3 push @p2
fighter3 push @p3
$p1.name = "f3p1"
$p2.name = "f3p2"
$p3.name = "f3p3"
load "x3_wing1.gif" bitmap t1
load "x3_wing2.gif" bitmap t2
if GRAPHICS_WINDOW_BITS == 8
compose bitmap t1
compose bitmap t2
remap bitmap t1
remap bitmap t2
temp remove all
temp push @p2
temp push @p3
texture temp bitmap t1 planar y
temp remove all
temp push @p1
texture temp bitmap t2 planar x