Games-Construder

 view release on metacpan or  search on metacpan

lib/Games/Construder/Client/Frontend.pm  view on Meta::CPAN

198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
   glViewport (0, 0, $WIDTH, $HEIGHT);
}
 
sub fog {
   my ($self) = @_;
   $self->{res}->{config}->{fog} eq ''
      ? $FOG_DEFAULT
      : $self->{res}->{config}->{fog}
}
 
sub update_fog {
   my ($self) = @_;
   my $fog = $FOGS{$self->fog ()} || $FOGS{$FOG_DEFAULT};
   glClearColor (@$fog);
   glFogfv_p (GL_FOG_COLOR, @$fog);
}
 
#  0 front  1 top    2 back   3 left   4 right  5 bottom
my @indices  = (
   qw/ 0 1 2 3 /, # 0 front
   qw/ 1 5 6 2 /, # 1 top

lib/Games/Construder/Client/Frontend.pm  view on Meta::CPAN

1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
sub input_mouse_button : event_cb {
   my ($self, $btn, $down) = @_;
   return unless $down;
 
   my $sbp = $self->{selected_box};
   my $sbbp = $self->{selected_build_box};
   $self->position_action ($sbp, $sbbp, $btn);
}
 
sub update_player_pos : event_cb {
   my ($self, $pos) = @_;
}
 
sub visible_chunks_changed : event_cb {
   my ($self, $new, $old, $req) = @_;
   # TODO: $req might be issued again and again with the same chunks,
   #       we should mabye rate limit that for more bandwidth friendly
   #       behaviour
}

lib/Games/Construder/Client/UI.pm  view on Meta::CPAN

480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
   $font eq 'big' ? $BIG_FONT : $font eq 'small' ? $SMALL_FONT : $NORM_FONT;
}
 
sub fit_size_pot {
   my ($size) = @_;
   my $gls = 1;
   $gls++ while $size->[0] > (2**$gls) || $size->[1] > (2**$gls);
   2**$gls
}
 
sub update {
   my ($self, $gui_desc) = @_;
 
   if (defined $gui_desc) {
      delete $self->{key_repeat};
      $self->{desc} = $gui_desc;
   }
 
   my $win = $self->{desc}->{window};
 
   $self->{element_offset} = 0;

lib/Games/Construder/Server/Player.pm  view on Meta::CPAN

401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
   delete $self->{upd_score_hl_tmout};
   delete $self->{death_timer};
   delete $self->{tick_timer};
 
   ctr_log (info => "Player %s logged out", $self->{name});
   #d# print Devel::FindRef::track $self;
}
 
my $world_c = 0;
 
sub update_pos {
   my ($self, $pos, $lv) = @_;
 
   if ($self->{freeze_update_pos} ne '') {
      ctr_log (debug => "update_pos thrown away, awaiting teleport confirmation!");
      return;
   }
 
   my $opos = $self->{data}->{pos};
   $self->{data}->{pos} = $pos;
   my $olv = $self->{data}->{look_vec} || [0,0,0];

lib/Games/Construder/Server/Player.pm  view on Meta::CPAN

569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
   $self->send_client ({ cmd => "chunk", pos => $chnk }, \$buf);
   $self->{sent_chunks}->{$id} = $chnk;
   delete $self->{to_send_chunks}->{$id};
}
 
sub msg {
   my ($self, $error, $msg) = @_;
   $self->{uis}->{msgbox}->show ($error, $msg);
}
 
sub update_score {
   my ($self, $hl) = @_;
   $self->{uis}->{score}->show ($hl);
}
 
sub query {
   my ($self, $pos) = @_;
   return unless @$pos;
 
   world_mutate_at ($pos, sub {
      my ($data) = @_;

lib/Games/Construder/Server/Player.pm  view on Meta::CPAN

949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
         $assign->{sel_mat} = $left[$i + 1];
         last;
      }
   }
 
   delete $self->{assign_ment_hl};
   $self->update_assignment_highlight;
   $self->{uis}->{assignment_time}->show;
}
 
sub update_assignment_highlight {
   my ($self) = @_;
 
   my $assign = $self->{data}->{assignment};
   my $selected = $assign->{sel_mat};
   if ($assign->{left}->{$selected} <= 0) {
      ($assign->{sel_mat}) = grep {
         $assign->{left}->{$_} > 0
      } keys %{$assign->{left}};
      delete $self->{assign_ment_hl};
   }

lib/Games/Construder/Server/UI.pm  view on Meta::CPAN

73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
sub hide_ui {
   my ($self, $name) = @_;
   $self->{pl}->{uis}->{$name}->hide;
}
 
sub delete_ui {
   my ($self, @args) = @_;
   $self->{pl}->delete_ui (@args);
}
 
sub update {
   my ($self, @args) = @_;
   $self->show (@args) if $self->{shown};
}
 
sub show {
   my ($self, @args) = @_;
   my $lyout = $self->layout (@args);
   $lyout->{commands}->{default_keys} = { $self->commands };
   if ($self->{cmd_need_select_boxes}) {
      $lyout->{commands}->{need_selected_boxes} = 1;



( run in 1.376 second using v1.01-cache-2.11-cpan-49f99fa48dc )