sub change_room {
my($method, $newroom, $oldroom, $alias2) = @_;
if ($newroom eq $oldroom) {
&post_prv($alias, "Du befindest dich bereits im Raum $newroom!");
&reload_html;
}
elsif ($newroom eq $loginplace) {
&post($room, q[] . ×tring . " $alias verlässt den Chat und geht in die $loginplace ... ", $alias);
&post_strmsg($alias, $room, 'quit');
unlink "data/online/rooms/$room/$alias";
&rm_rstat($alias, $room);
&check_online;
&reload_html;
}
open RSTAT, ";
close RSTAT;
if ($rstat[0] eq "1\n") {
if (3 <= &hierachie($alias)) {
&post_prv($alias, "Der Raum $newroom ist leider abgesperrt!");
&reload_html;
}
}
&private_javascript($alias, $room, "parent.input.document.inf.room.value = '$newroom';open('chat?request=online&room=$newroom&alias=$alias&tmpid=$tmpid','online');");
open MSGFILE, ">>data/msgs/$newroom";
print MSGFILE "$alias<;" . time . "<;!<;!<;<;\n";
close MSGFILE;
open MSGFILE, ">>data/msgs/$room";
if ($method eq 'j') {
print MSGFILE "$alias<;" . time . q[<;!<;!<;] . ×tring . " Du wechselst aus dem Raum $oldroom herein nach $newroom ...
<;\n";
}
elsif ($method eq 'ju') {
print MSGFILE "$alias<;" . time . q[<;!<;!<;] . ×tring . " Du folgst $alias2 aus dem Raum $oldroom herein nach $newroom ...
<;\n";
}
elsif ($method eq 'sep') {
print MSGFILE "$alias<;" . time . q[<;!<;!<;] . ×tring . " Du wechselst aus dem Raum $oldroom herein nach $newroom und sperrst ab...
<;\n";
}
elsif ($method eq 'beam') {
print MSGFILE "$alias<;" . time . q[<;!<;!<;] . ×tring . " Du wurdest von $alias2 in den Raum $newroom gebeamt...
<;\n";
}
close MSGFILE;
&post_strmsg($alias, $room, 'cr', $newroom);
$room = $oldroom;
my $tmpstamp = time;
if ($method eq 'j') {
&post($room, q[] . ×tring . " $alias wechselt in den Raum $newroom ...", $alias);
$room = $newroom;
&post($room, q[] . ×tring . " $alias kommt aus dem Raum $oldroom herein nach $newroom ...", $alias);
}
elsif ($method eq 'ju') {
&post($room, q[] . ×tring . " $alias folgt $alias2 in den Raum $newroom ...", $alias);
$room = $newroom;
&post($room, q[] . ×tring . " $alias kommt aus dem Raum $oldroom und folgt $alias2 herein nach $newroom ...", $alias);
}
elsif ($method eq 'sep') {
&post($room, q[] . ×tring . " $alias wechselt in den Raum $newroom und sperrt ab...", $alias);
$room = $newroom;
&post($room, q[] . ×tring . " $alias kommt aus dem Raum $oldroom herein nach $newroom und sperrt ab...", $alias);
}
elsif ($method eq 'beam') {
&post($room, q[] . ×tring . " $alias2 beamt $alias in den Raum $newroom...", $alias2);
$room = $newroom;
&post($room, q[] . ×tring . " $alias2 beamt $alias aus dem Raum $oldroom herein nach $room...", $alias2);
}
unlink "data/online/rooms/$oldroom/$alias";
&rm_rstat($alias, $oldroom);
&check_online;
}
1;