ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/bin/pclient
(Generate patch)

Comparing deliantra/Deliantra-Client/bin/pclient (file contents):
Revision 1.34 by elmex, Sat Apr 8 18:18:09 2006 UTC vs.
Revision 1.38 by root, Sun Apr 9 00:06:10 2006 UTC

62 %GL_EXT = map +($_ => 1), split /\s+/, Crossfire::Client::gl_extensions; 62 %GL_EXT = map +($_ => 1), split /\s+/, Crossfire::Client::gl_extensions;
63 63
64 $GL_EXT{GL_ARB_texture_non_power_of_two} 64 $GL_EXT{GL_ARB_texture_non_power_of_two}
65 or warn "WARNING: non-power-of-two opengl extension required"; 65 or warn "WARNING: non-power-of-two opengl extension required";
66 66
67 $UIFONT = SDL::TTFOpenFont Crossfire::Client::find_rcfile "uifont.ttf", $HEIGHT / 40
68 or die "TTFOpenFont: $!";
69
70 $ALT_ENTER_MESSAGE = new Crossfire::Client::Widget::Label 0, $HEIGHT - $HEIGHT / 40, 10, $UIFONT, "Alt-Enter toggles fullscreen mode"; 67 $ALT_ENTER_MESSAGE = new Crossfire::Client::Widget::Label 0, $HEIGHT - $HEIGHT / 40, 10, $UIFONT, "Alt-Enter toggles fullscreen mode";
71 $ALT_ENTER_MESSAGE->move (0, $HEIGHT - ($ALT_ENTER_MESSAGE->size_request)[1]); 68 $ALT_ENTER_MESSAGE->move (0, $HEIGHT - ($ALT_ENTER_MESSAGE->size_request)[1]);
72 $ALT_ENTER_MESSAGE->activate; 69 $ALT_ENTER_MESSAGE->activate;
73 70
74 # Test code #d# 71 # Test code #d#
72 my $frm = new Crossfire::Client::Widget::Frame;
75 $tw = new Crossfire::Client::Widget::Window; 73 $tw = new Crossfire::Client::Widget::Window;
76 $tw->add (my $lbl = new Crossfire::Client::Widget::Label 0, $HEIGHT - $HEIGHT / 40, 10, $UIFONT, "Foo in the garden!"); 74 $frm->add (new Crossfire::Client::Widget::Label 0, 0, 10, $UIFONT, "Foo in the garden!");
77# $tw = new Crossfire::Client::Widget::Label 0, $HEIGHT - $HEIGHT / 40, 10, $UIFONT, "Foo in the garden!"; 75 $tw->add ($frm);
78 76
79 $tw->move (0, $HEIGHT - 50); 77 $tw->move (0, $HEIGHT - 120);
80 $tw->activate; 78 $tw->activate;
81 # Test code end #d# 79 # Test code end #d#
82 80
83 glClearColor 0, 0, 0, 0; 81 glClearColor 0, 0, 0, 0;
84 82
85 glEnable GL_TEXTURE_2D; 83 glEnable GL_TEXTURE_2D;
84 glEnable GL_COLOR_MATERIAL;
86 glShadeModel GL_FLAT; 85 glShadeModel GL_FLAT;
87 glDisable GL_DEPTH_TEST; 86 glDisable GL_DEPTH_TEST;
88 glBlendFunc GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA; 87 glBlendFunc GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA;
89
90 glMatrixMode GL_PROJECTION;
91 glLoadIdentity;
92 glOrtho 0, $WIDTH, $HEIGHT, 0, -100 , 100;
93
94 glMatrixMode GL_MODELVIEW;
95 88
96 $_->() for @GL_INIT; 89 $_->() for @GL_INIT;
97} 90}
98 91
99sub start_game { 92sub start_game {
112 105
113 $CONN = new conn 106 $CONN = new conn
114 host => $CFG->{host}, 107 host => $CFG->{host},
115 port => $CFG->{port}, 108 port => $CFG->{port},
116 user => $CFG->{user}, 109 user => $CFG->{user},
117 pass => $CFG->{password}; 110 pass => $CFG->{password},
111 mapw => 50,
112 maph => 37,
113 ;
118} 114}
119 115
120sub stop_game { 116sub stop_game {
121 remove Glib::Source $SDL_TIMER; 117 remove Glib::Source $SDL_TIMER;
122 118
125} 121}
126 122
127 123
128sub force_refresh { 124sub force_refresh {
129 glViewport 0, 0, $WIDTH, $HEIGHT; 125 glViewport 0, 0, $WIDTH, $HEIGHT;
126
127 glMatrixMode GL_PROJECTION;
128 glLoadIdentity;
129 glOrtho 0, $WIDTH, $HEIGHT, 0, -100 , 100;
130 glMatrixMode GL_MODELVIEW;
131
130 glClear GL_COLOR_BUFFER_BIT; 132 glClear GL_COLOR_BUFFER_BIT;
131 133
132 $_->draw for @Crossfire::Client::Widget::ACTIVE_WIDGETS; 134 $_->draw for @Crossfire::Client::Widget::ACTIVE_WIDGETS;
133 135
134 SDL::GLSwapBuffers; 136 SDL::GLSwapBuffers;
312 314
313 315
314############################################################################# 316#############################################################################
315 317
316SDL::Init SDL_INIT_EVERYTHING; 318SDL::Init SDL_INIT_EVERYTHING;
317SDL::TTFInit;
318 319
319my $mapwidget = Crossfire::Client::Widget::MapWidget->new; 320my $mapwidget = Crossfire::Client::Widget::MapWidget->new;
320 321
321$mapwidget->activate; 322$mapwidget->activate;
322$mapwidget->focus_in; 323$mapwidget->focus_in;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines