This commit is contained in:
Jeena Paradies 2011-04-13 17:52:09 +02:00
parent 31240b02b8
commit 0c340f95d2
6 changed files with 1193 additions and 1188 deletions

5
games/Pong-bots/bots.sh Executable file
View file

@ -0,0 +1,5 @@
#!/bin/sh
for (( i = 0; i < 2; i++ )); do
./pong-bot.rb &
done

View file

@ -29,8 +29,8 @@ class GGSNetwork
protected
def write(message)
puts message.inspect
@socket.write(message)
puts message
end
def read
@ -58,7 +58,6 @@ class GGSNetwork
def receivedCommand(headers, data)
puts [headers, data].inspect
if headers.has_key? "Client-Command"
command = headers["Client-Command"]
case command

View file

@ -17,18 +17,12 @@ class PongBot
@send_start = false
@ggs_network = GGSNetwork.new(self)
#@ggs_network.connect("10.42.43.1")
@ggs_network.connect()
end
def ggsNetworkReady(ggs_network, ready)
@ggs_network.sendCommand("ready")
t = Thread.new {
loop do
gameTick()
sleep 0.3
end
}
end
def ggsNetworkDefined(ggs_network, defined)
@ -56,7 +50,6 @@ class PongBot
@send_start = true
end
else
puts "#{@ball.y}:#{@me.y}"
if @ball.y < @me.y - 5
@ggs_network.sendCommand("up")
elsif @ball.y > @me.y - 5
@ -71,6 +64,13 @@ class PongBot
else
@me = @player2
end
Thread.new {
loop do
gameTick()
sleep 0.3
end
}
end
def ball(pos_s)
@ -88,7 +88,6 @@ class PongBot
def game(wait_or_start)
if wait_or_start == "wait"
puts "Other ready"
else
@game_paused = false
end

View file

@ -11,7 +11,7 @@
@implementation GGSNetwork
#define GGS_HOST @"home.jeena.net"
#define GGS_HOST @"localhost"
#define GGS_PORT 9000
#define NO_TIMEOUT -1

View file

@ -121,21 +121,22 @@ intern_add_player(Table, Player) ->
1 ->
erlang:display("A player joined");
2 ->
[P1,P2] = PlayerList,
erlang:display(PlayerList),
erlang:display("P1: joining"),
ggs_db:setItem(Table, local_storage, P1, player1),
erlang:display(ggs_db:getItem(Table, local_storage, Player)),
ggs_db:setItem(Table, local_storage, player1_y, 50),
ggs_table:send_command(Table, Player, {"welcome", int2str(1)}),
ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}),
erlang:display("P2: joining"),
ggs_db:setItem(Table, local_storage, P2, player2),
erlang:display(ggs_db:getItem(Table, local_storage, Player)),
ggs_db:setItem(Table, local_storage, player2_y, 50),
ggs_table:send_command(Table, Player, {"welcome", int2str(2)}),
ggs_table:send_command(Table, Player, {"player1_y", int2str(50)}),
ggs_table:notify_all_players(Table, {"player2_y", int2str(50)});
erlang:display("Player 2 joined"),
[P1,P2] = PlayerList,
erlang:display(PlayerList),
erlang:display("P1: joining"),
ggs_db:setItem(Table, local_storage, P1, player1),
erlang:display(ggs_db:getItem(Table, local_storage, P1)),
ggs_db:setItem(Table, local_storage, player1_y, 50),
ggs_table:send_command(Table, P1, {"welcome", int2str(1)}),
ggs_table:notify_all_players(Table, {"player1_y", int2str(50)}),
erlang:display("P2: joining"),
ggs_db:setItem(Table, local_storage, P2, player2),
erlang:display(ggs_db:getItem(Table, local_storage, P2)),
ggs_db:setItem(Table, local_storage, player2_y, 50),
ggs_table:send_command(Table, P2, {"welcome", int2str(2)}),
ggs_table:send_command(Table, P2, {"player1_y", int2str(50)}),
ggs_table:notify_all_players(Table, {"player2_y", int2str(50)});
_Other ->
ggs_table:send_command(Table, Player, {"not_welcome", ""})
end.