mirror of
https://github.com/abakh/nbsdgames
synced 2025-05-12 15:09:33 -04:00
293 lines
8.6 KiB
HTML
293 lines
8.6 KiB
HTML
<html>
|
||
<head>
|
||
<meta http-equiv="Pragma" content="no-cache">
|
||
<meta http-equiv="Cache-Control" content="no-cache">
|
||
<meta http-equiv="Expires" content="0">
|
||
<title>The Bub's Brothers</title>
|
||
</head>
|
||
<body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#000099" alink="#FF0000">
|
||
|
||
<center><table cellspacing=0 cellpadding=0 border=0 width="95%%">
|
||
|
||
%(
|
||
externaltarget = running and ' target="new"' or ''
|
||
)s
|
||
|
||
|
||
<tr>
|
||
<td width="6%%" bgcolor="#000000"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
<td width="6%%" bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF"><a href="stop.html?time=%(tim)s"><img src="close.png" width=17 height=17> <font color="#FF0000" size=+1>Stop this program</font></a></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#F0E0E0"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#E0C0C0" align="center"><font size=+3><strong>The Bub's Brothers</strong></font></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#F0E0E0"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF" align="right">
|
||
<a href="http://bub-n-bros.sourceforge.net"%(externaltarget)s>Web Home page</a> -
|
||
<a href="name.html">Player Names & Teams</a> -
|
||
<a href="options.html?time=%(tim)s">Configuration</a>
|
||
</td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF" background="wave1.png"><font size=+3> </font></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td>
|
||
<table width="100%%" cellpadding=7>
|
||
<tr>
|
||
<td width="20%%" bgcolor="#000080" align="center"><font size=+1 color="#FFFF00"><strong>New game</strong></font></td>
|
||
<td bgcolor="#C0C0FF">
|
||
<table border=0>
|
||
<tr>
|
||
<td width=48><img src="%(juststarted and 'sfbob.png' or 'bob.png')s"></td>
|
||
<td>%(
|
||
if running:
|
||
print '<form name="S" action="index.html" method="get">'
|
||
print '<input type=hidden name="time" value="%s">' % tim
|
||
print '<table width="100%" border=0><tr><td><p><strong>'
|
||
if juststarted:
|
||
print 'Server started!'
|
||
elif justconnected:
|
||
print 'Playing'
|
||
elif count == 0:
|
||
print 'No client is connected to your server at the moment.'
|
||
elif count == 1:
|
||
print 'One connected client.'
|
||
else:
|
||
print '%d connected clients.' % count
|
||
print '</strong></p></td>'
|
||
print '<td align="center"><input type=submit value="Update on connected clients"></td>'
|
||
print '</tr></table></form>'
|
||
print '<p><strong><a href="join.html?host=%s&port=%s&httpport=%s&time=%s">' % (running[0][0], running[0][1], self.httpport, tim),
|
||
print 'Join your own game now</a></strong> at <strong>%s:%s</strong></p>' % (
|
||
running[0])
|
||
##if metapublish:
|
||
## import time
|
||
## print '<p><a href="register.html?a=%s">' % time.time()
|
||
## if self.globaloptions.metapublish == 'y':
|
||
## self.has_been_published = 1
|
||
## metaquery = metaquery or []
|
||
## metaquery.insert(0, 'desc='+fndesc)
|
||
## s = 'a=' + metapublish
|
||
## if s not in metaquery:
|
||
## metaquery.insert(0, s)
|
||
## print 'Register again',
|
||
## else:
|
||
## print 'Register (after all)',
|
||
## print 'your server to the SourceForge meta-server</a><br>'
|
||
## print '<a href="register.html?d=%s">' % time.time()
|
||
## print 'Unregister your server</a>',
|
||
## print '<font size=-1>(it is unregistered automatically after some time',
|
||
## print 'when other people cannot find it, or',
|
||
## print 'if you stop it with the link <font color="#FF2000">Stop this program</font> at the top of the page)</font></p>'
|
||
)s
|
||
<form name="n" action="new.html" method="get">
|
||
<input type=hidden name="time" value="%(tim)s">
|
||
%(
|
||
if self.Game:
|
||
print '<input type=submit',
|
||
if running:
|
||
print 'value="Start another game">'
|
||
else:
|
||
print 'value="Start a new game">'
|
||
else:
|
||
print 'You need the <a href="http://bub-n-bros.sourceforge.net/download.html">complete version</a> to start a new game.<br><font size=-1>With this version you can only connect to existing servers and <font color="#FF0000">only over fast links!</font></font>'
|
||
)s
|
||
</form>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF" background="wave3.png"><font size=+3> </font></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td>%(
|
||
servers = self.getlocalservers()[:]
|
||
|
||
found = []
|
||
def show((addr, (info, ping)), found=found):
|
||
import socket
|
||
infolst = info.split(':') or ['?']
|
||
if len(infolst) >= 3:
|
||
httpport = infolst.pop(2)
|
||
else:
|
||
httpport = 'off'
|
||
print '<a href="join.html?host=%s&port=%d&httpport=%s&time=%s">' % (
|
||
addr[0], addr[1], httpport, tim)
|
||
host, port = addr
|
||
#host = socket.gethostbyaddr(host)[0]
|
||
if ping is not None:
|
||
infolst.append('ping: %dms' % int(ping*1000))
|
||
if (addr, infolst[0]) == running:
|
||
infolst.append('this is your own server')
|
||
found.append(1)
|
||
infolst = map(htmlquote, infolst)
|
||
print '<strong>%s:%s</strong></a> playing <strong>%s</strong>' % (
|
||
host, port, infolst[0])
|
||
if len(infolst) > 1:
|
||
print ' (%s)' % ' · · '.join(infolst[1:])
|
||
|
||
if servers is None:
|
||
rowspan = 1
|
||
else:
|
||
rowspan = (len(servers) or 1)+1
|
||
)s
|
||
<table width="100%%" cellpadding=7><tr>
|
||
<td width="20%%" bgcolor="#FF0080" align="center" rowspan="%(rowspan)s">
|
||
<font size=+1 color="#FFFF00">
|
||
<strong>Local games</strong>
|
||
</font>
|
||
</td>
|
||
<td bgcolor="#FFC0C0">
|
||
%(
|
||
if servers is not None:
|
||
if servers:
|
||
show(servers[0])
|
||
else:
|
||
print "(no server found)"
|
||
print '</td></tr>'
|
||
for s in servers[1:]:
|
||
print '<tr><td bgcolor="#FFC0C0">'
|
||
show(s)
|
||
print '</td></tr>'
|
||
print '<tr><td bgcolor="#FFC0C0">'
|
||
)s
|
||
<table border=0><tr>
|
||
<td width=48><img src="boob.png"></td>
|
||
<td>
|
||
%(
|
||
if running and not found:
|
||
import hostchooser, gamesrv
|
||
if gamesrv.displaysockport(gamesrv.openpingsocket()) != hostchooser.UDP_PORT:
|
||
print '<p><font size=-1>Note: your server does not appear in this list'
|
||
print 'because the UDP port %d is already in use (is another Bub & Bob server running on this machine?).' % hostchooser.UDP_PORT
|
||
print 'Use the full server address <strong>%s:%s</strong></font></p>' % running[0]
|
||
)s
|
||
<form name="L" action="index.html" method="get">
|
||
<input type=hidden name="time" value="%(tim)s">
|
||
<input type=submit value="Search again for local servers">
|
||
</form>
|
||
</td>
|
||
</tr></table>
|
||
<p><form name="J" action="join.html" method="get">
|
||
<input type=hidden name="time" value="%(tim)s">
|
||
Or connect to server:
|
||
<input type=text name="host" size=25>
|
||
(<code>host</code> or <code>host:port</code>)
|
||
<input type=submit value="Go">
|
||
</form></p>
|
||
</td>
|
||
</tr></table>
|
||
</td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#FFFFFF" background="wave2.png"><font size=+3> </font></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td>
|
||
<table width="100%%" cellpadding=7>
|
||
<tr>
|
||
<td width="20%%" bgcolor="#008000" align="center"><font size=+1 color="#FFFF00"><strong>Internet games</strong></font></td>
|
||
<td bgcolor="#C0FFCC">
|
||
<table border=0>
|
||
<tr>
|
||
<td width=48><img src="bub.png"></td>
|
||
<td><p><a href="%(self.metaserverpage(headers))s">Go to the Internet servers page</a></p>
|
||
<p><font size=-1>Don't forget to <a href="name.html">give a name</a>
|
||
to your dragons before you join a server!
|
||
</font></p></td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#000000" align="center"><img src="header.png"></td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
<td bgcolor="#000000"> </td>
|
||
</tr>
|
||
|
||
|
||
</table></center>
|
||
|
||
|
||
</body>
|
||
</html>
|