moved code out of awkward bots repo

This commit is contained in:
sm
2013-09-27 22:27:05 -07:00
parent 92a2040d70
commit e33f2c0c4f
7 changed files with 233 additions and 38 deletions
+7 -8
View File
@@ -1,7 +1,6 @@
package main
import (
"bitbucket.org/hackerbots/bot"
v "bitbucket.org/hackerbots/vector"
"code.google.com/p/go.net/websocket"
"log"
@@ -11,9 +10,9 @@ import (
type player struct {
ws *websocket.Conn
Robot bot.Robot
send chan *bot.Boardstate
Instruction bot.Instruction
Robot Robot
send chan *Boardstate
Instruction Instruction
}
func (p *player) sender() {
@@ -31,7 +30,7 @@ func (p *player) recv() {
for {
// XXX: need to mark myself as having received something, also binding
// such action to a particular game turn ID
var msg bot.Instruction
var msg Instruction
err := websocket.JSON.Receive(p.ws, &msg)
if err != nil {
// TODO: perhaps we could be a bit more precise in the handling of
@@ -136,7 +135,7 @@ func (p *player) scan(players map[*player]bool) {
}
dist := v.Distance(player.Robot.Position, p.Robot.Position)
if dist < float64(p.Robot.Stats.ScannerRadius) {
s := bot.Scanner{
s := Scanner{
Position: v.Point2d{
X: player.Robot.Position.X,
Y: player.Robot.Position.Y,
@@ -147,7 +146,7 @@ func (p *player) scan(players map[*player]bool) {
}
}
func (p *player) fire(projectiles map[*bot.Projectile]bool) *bot.Projectile {
func (p *player) fire(projectiles map[*Projectile]bool) *Projectile {
// XXX: is this to prevent us from having multiple projectiles from the
// same bot?
for proj := range projectiles {
@@ -156,7 +155,7 @@ func (p *player) fire(projectiles map[*bot.Projectile]bool) *bot.Projectile {
}
}
return &bot.Projectile{
return &Projectile{
Id: p.Robot.Id,
Position: p.Robot.Position,
MoveTo: *p.Robot.FireAt,