X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=web%2FObj%2Fbrisk.phh;h=add31a772c1c653836ff67190ab35649195fa312;hb=19ce01ca763746cd34934940c4c4ed962e2449bc;hp=f679d003c0caf6c3ac4e481cba8c697d06f00d07;hpb=159f7722184524084a125e590f60478641401675;p=brisk.git
diff --git a/web/Obj/brisk.phh b/web/Obj/brisk.phh
index f679d00..add31a7 100644
--- a/web/Obj/brisk.phh
+++ b/web/Obj/brisk.phh
@@ -26,8 +26,7 @@ define(TABLES_N, 12);
define(PLAYERS_N, 3);
define(MAX_POINTS, 5);
define(MAX_PLAYERS, (20 + (PLAYERS_N * TABLES_N)));
-define(SHM_DIMS, (50000 * MAX_PLAYERS));
-// define(COMM_N, 6);
+define(SHM_DIMS, (50000 + 10000 * TABLES_N + 15000 * MAX_PLAYERS));
define(COMM_N, 12);
define(COMM_GEN_N, 50);
define(SESS_LEN, 13);
@@ -56,9 +55,9 @@ define(BRISK_DEBUG, 0);
$G_false = FALSE;
$G_all_points = array( 11,10,4,3,2, 0,0,0,0,0 );
-$G_brisk_version = "spawn-0.0.3";
+$G_brisk_version = "spawn-0.0.6";
-$root_wellarr = Array ( 'Benvenuto in brisk (Ver. '.$G_brisk_version.'), NOVITA\': nuovo layout che permette più tavoli, più tavoli.',
+$root_wellarr = Array ( 'Benvenuto in brisk (Ver. '.$G_brisk_version.'), NOVITA\': riscritta tutta l\'architettura dati del server, tutto piè veloce e leggero.',
'Se vuoi iscriverti alla Mailing List, cliccala!' );
$table_wellarr = Array ( 'Benvenuto al tavolo. Se almeno tre giocatori non sbloccano l\'uscita cliccando il lucchetto, chi esce non può risedersi a un qualunque tavolo per '.floor(BAN_TIME/60).' minuti.');
@@ -146,7 +145,7 @@ class Card {
$this->stat = 'take'; // Card stat
$this->owner = $newown;
}
-}
+} // end class Card
class Table {
var $player;
@@ -187,12 +186,12 @@ class Table {
{
GLOBAL $G_false;
- if (($thiz = new Table()) == FALSE)
+ if (($thiz =& new Table()) == FALSE)
return ($G_false);
$thiz->player = array();
$thiz->player_n = 0;
- $thiz->card = &$thiz->bunch_create();
+ $thiz->card = FALSE;
$thiz->asta_pla = array(); // TRUE: in auction, FALSE: out of the auction
$thiz->asta_pla_n= -1;
$thiz->asta_card = -1;
@@ -221,7 +220,7 @@ class Table {
{
GLOBAL $G_false;
- if (($thiz = new Table()) == FALSE)
+ if (($thiz =& new Table()) == FALSE)
return ($G_false);
$thiz->player = array();
@@ -267,7 +266,7 @@ class Table {
return ($G_false);
$thiz->player_n = $from->player_n;
- $thiz->card = $from->card;
+ $thiz->card = &$thiz->bunch_create();
$thiz->mazzo = $from->mazzo;
$thiz->gstart = $from->gstart;
$thiz->turn = $from->turn;
@@ -463,7 +462,7 @@ class Table {
return ($ct);
}
-} // End class Table
+} // end class Table
class User {
var $name; // name of the user
@@ -522,7 +521,7 @@ class User {
{
GLOBAL $G_false;
- if (($thiz = new User()) == FALSE)
+ if (($thiz =& new User()) == FALSE)
return ($G_false);
$thiz->name = $from->name;
@@ -636,7 +635,8 @@ class User {
return (FALSE);
}
-}
+} // end class User
+
function step_get($sess) {
$fp = FALSE;
@@ -724,6 +724,9 @@ class Room {
}
if ($bri != FALSE) {
+ //
+ // SPAWN: JOIN
+ //
log_main("garbage_manager: bri loaded successfully.");
$bri->garbage_manager(TRUE);
@@ -744,6 +747,7 @@ class Room {
$user_cur->trans_step = $bri_user->step;
$user_cur->lacc = $bri_user->lacc;
$user_cur->laccwr = $bri_user->lacc;
+ $user_cur->bantime = $bri_user->bantime;
}
$this->room_join_wakeup(&$user_cur);
@@ -764,6 +768,7 @@ class Room {
else {
log_main("ERROR: table ".$table_idx." unrecoverable join");
}
+ Briskin5::unlock_data($sem);
} // bri::lock_data
} // if ($table_cur->player_n == PLAYERS_N) {
} // for ($table_idx = 0 ; $table_idx < TABLES_N ; $table_idx++) {
@@ -912,6 +917,8 @@ class Room {
$curtime = time();
$user_wup = array();
$user_wup_n = 0;
+ $user_tab = array();
+ $user_tab_n = 0;
log_main("JOIN WAKEUP: from table [".$user->table."] nplayers_n: ".$this->table[$user->table]->player_n);
for ($i = 0 ; $i < $table->player_n ; $i++) {
@@ -932,6 +939,7 @@ class Room {
$user_cur->table = -1;
$user_wup[$user_wup_n++] = &$user_cur;
}
+ $user_tab[$user_tab_n++] = &$user_cur;
}
}
@@ -961,29 +969,20 @@ class Room {
$act_content = table_act_content(FALSE, 0, $table_idx, $user_cur->table);
$ret .= sprintf('$("table_act%d").innerHTML = "%s";', $table_idx, $act_content);
- for ($wup_idx = 0 ; $wup_idx < $user_wup_n ; $wup_idx++)
- if ($user_cur == $user_wup[$wup_idx])
+ for ($tab_idx = 0 ; $tab_idx < $user_tab_n ; $tab_idx++)
+ if ($user_cur == $user_tab[$tab_idx])
break;
+ // for users that wakeup the room will be reconstructed by index_rd.php
+ if ($tab_idx < $user_tab_n)
+ continue;
+
log_main("JOIN_WAKEUP wup_idx ".$wup_idx." wup_n ".$user_wup_n);
- if ($wup_idx < $user_wup_n) {
- log_main("JOIN_WAKEUP less");
- // set the new status
- $ret .= 'subst = "standup"; ';
- // clean the action buttons in other tables
- for ($e = 0 ; $e < TABLES_N ; $e++) {
- if ($this->table[$e]->player_n < PLAYERS_N)
- $ret .= sprintf('$("table_act%d").innerHTML = "%s";', $e, table_act_content(TRUE, 0, $e, $user_cur->table));
- }
- log_main("JOIN_WAKEUP end less");
- }
- else {
- log_main("JOIN_WAKEUP more");
- $act_content = table_act_content(($user_cur->subst == 'standup'), $table->player_n, $table_idx, $user_cur->table);
- $ret .= sprintf('$("table_act%d").innerHTML = "%s";', $table_idx, $act_content);
- log_main("JOIN_WAKEUP end more");
- }
+ log_main("JOIN_WAKEUP more");
+ $act_content = table_act_content(($user_cur->subst == 'standup'), $table->player_n, $table_idx, $user_cur->table);
+ $ret .= sprintf('$("table_act%d").innerHTML = "%s";', $table_idx, $act_content);
+ log_main("JOIN_WAKEUP end more");
}
log_wr("ROOM_JOIN_WAKEUP: ".$ret);
$user_cur->comm[$user_cur->step % COMM_N] = $ret;
@@ -1410,10 +1409,8 @@ function log_only2($log) {
$ssess = "XXXX";
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_only2.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("ONL2: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1429,10 +1426,8 @@ function log_only($log) {
$ssess = "XXXX";
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_only.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("ONLY: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1448,10 +1443,8 @@ function log_main($log) {
$ssess = "XXXX";
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_main.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("MAIN: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1468,9 +1461,7 @@ function log_rd($log) {
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_rd.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("READ: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1488,8 +1479,7 @@ function log_rd2($log) {
$ssess = $sess;
- // if (($fp = @fopen("/tmp/brisk_rd2.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("REA2: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1506,9 +1496,7 @@ function log_send($log) {
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_send.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("SEND: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1524,10 +1512,8 @@ function log_lock($log) {
$ssess = "XXXX";
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_lock.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("LOCK: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1544,9 +1530,7 @@ function log_wr($log) {
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_wr.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("WRIT: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1563,9 +1547,7 @@ function log_load($log) {
else
$ssess = $sess;
-
- // if (($fp = @fopen("/tmp/brisk_load.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("LOAD: [%s] [%s]\n", $ssess, $log));
fclose($fp);
}
@@ -1575,8 +1557,7 @@ function log_auth($sess, $log) {
if ((BRISK_DEBUG & DBG_AUTH) == 0)
return;
- // if (($fp = @fopen("/tmp/brisk_auth.log", 'a')) != FALSE) {
- if (($fp = @fopen("/tmp/brisk.log", 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/brisk.log", 'a')) != FALSE) {
fwrite($fp, sprintf("AUTH: [%s] [%d] [%s]\n", $sess, time(), $log));
fclose($fp);
}
@@ -1587,7 +1568,7 @@ function log_legal($timecur, $sess, $name, $where, $mesg)
{
GLOBAL $_SERVER;
- if (($fp = @fopen(LEGAL_PATH, 'a')) != FALSE) {
+ if (($fp = @fopen(LEGAL_PATH."/legal.log", 'a')) != FALSE) {
/* Unix time | session | nickname | IP | where was | mesg */
fwrite($fp, sprintf("%ld|%s|%s|%s|%s|%s|\n", $timecur, $sess, $name, $_SERVER['REMOTE_ADDR'], $where , $mesg));
fclose($fp);