From e4184557ebc33201e217e167d577128f710e4890 Mon Sep 17 00:00:00 2001 From: Daniel Axtens Date: Tue, 4 May 2010 17:07:45 +0800 Subject: [PATCH] unbroke large chunks --- src/link/C/Makefile | 6 +++--- src/link/C/__init__.py | 0 .../c_frenchie.c} | 13 ++++++------ src/link/C/agents/{c-angel.c => c_angel.c} | 2 +- .../C/agents/{c-lucifer.c => c_lucifer.c} | 11 +++++----- .../{c-streetfighter.c => c_streetfighter.c} | 9 +++++---- .../C/c-link-lib.xcodeproj/project.pbxproj | 20 +++++++++---------- src/link/C/c_agents.py | 20 +++++++++++++++++++ src/link/cangel.py | 8 -------- src/simulate.py | 4 ++-- 10 files changed, 54 insertions(+), 39 deletions(-) create mode 100644 src/link/C/__init__.py rename src/link/C/{agents/c-frechie.c => agents-broken/c_frenchie.c} (93%) rename src/link/C/agents/{c-angel.c => c_angel.c} (98%) rename src/link/C/agents/{c-lucifer.c => c_lucifer.c} (86%) rename src/link/C/agents/{c-streetfighter.c => c_streetfighter.c} (89%) create mode 100644 src/link/C/c_agents.py delete mode 100644 src/link/cangel.py diff --git a/src/link/C/Makefile b/src/link/C/Makefile index 10e306b..ccefb00 100644 --- a/src/link/C/Makefile +++ b/src/link/C/Makefile @@ -16,9 +16,9 @@ all: $(LINKSRCS) $(LINKLIB) $(AGENTS) $(LINKLIB): $(LINKOBJS) $(AR) rcs $(LINKLIB) $(LINKOBJS) -$(AGENTS): $(AGENTSRCS) - @echo Building $< - $(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ +$(AGENTS): $(AGENTSRCS) $(LINKLIB) + @echo Building $@ + $(CC) $(CFLAGS) $(LDFLAGS) $@.c -o $@ .c.o: c_link.h $(CC) -c $(CFLAGS) $< -o $@ diff --git a/src/link/C/__init__.py b/src/link/C/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/link/C/agents/c-frechie.c b/src/link/C/agents-broken/c_frenchie.c similarity index 93% rename from src/link/C/agents/c-frechie.c rename to src/link/C/agents-broken/c_frenchie.c index ed2ba09..78866a6 100644 --- a/src/link/C/agents/c-frechie.c +++ b/src/link/C/agents-broken/c_frenchie.c @@ -1,5 +1,5 @@ /* - * c-frechie.c + * c_frechie.c * c-link-lib * * Created by Daniel Axtens on 22/04/10. @@ -30,8 +30,8 @@ #define NUMBEROFAGENTSGUESS 100 /* The name of the n-th foe we've seen, as well as a 0/1 have we lost to them */ -char foesNames[][MAXFOENAMELEN] = NULL; -int haveLostToFoe[] = NULL; +char foesNames[][MAXFOENAMELEN]; +int haveLostToFoe[]; /* The length of the array, and how far we are along it */ size_t foesLen = 0; @@ -46,13 +46,13 @@ ATTACKTYPE Attack( char * foe_name ) { /* Here we choose the thing that will hurt them if they go for the kill */ switch (attack.realAttack) { case rock: - result.promisedAttack = paper; + attack.promisedAttack = paper; break; case paper: - result.promisedAttack = scissors; + attack.promisedAttack = scissors; break; default: /* attack = scissors */ - result.promisedAttack = rock; + attack.promisedAttack = rock; break; } return attack; @@ -72,6 +72,7 @@ ITEMTYPE Defend( char * foeName, ITEMTYPE foePromisedAttack ) { defence = paper; break; } + return defence; } /* This is so much less fun in C */ diff --git a/src/link/C/agents/c-angel.c b/src/link/C/agents/c_angel.c similarity index 98% rename from src/link/C/agents/c-angel.c rename to src/link/C/agents/c_angel.c index c6c8687..17d5b65 100644 --- a/src/link/C/agents/c-angel.c +++ b/src/link/C/agents/c_angel.c @@ -1,5 +1,5 @@ /* - * c-angel.c + * c_angel.c * c-link-lib * * Created by Daniel Axtens on 20/04/10. diff --git a/src/link/C/agents/c-lucifer.c b/src/link/C/agents/c_lucifer.c similarity index 86% rename from src/link/C/agents/c-lucifer.c rename to src/link/C/agents/c_lucifer.c index 1dabc34..204e1dd 100644 --- a/src/link/C/agents/c-lucifer.c +++ b/src/link/C/agents/c_lucifer.c @@ -1,5 +1,5 @@ /* - * c-lucifer.c + * c_lucifer.c * c-link-lib * * Created by Daniel Axtens on 20/04/10. @@ -21,16 +21,16 @@ ATTACKTYPE Attack( char * foe_name ) { /* Here we choose the thing that will hurt them if they go for a tie */ switch (attack.realAttack) { case rock: - result.promisedAttack = scissors; + attack.promisedAttack = scissors; break; case paper: - result.promisedAttack = rock; + attack.promisedAttack = rock; break; default: /* attack = scissors */ - result.promisedAttack = paper; + attack.promisedAttack = paper; break; } - attack.promisedAttack = result.realAttack; /* Tells the truth for its bluff */ + attack.promisedAttack = attack.realAttack; /* Tells the truth for its bluff */ return attack; } @@ -49,6 +49,7 @@ ITEMTYPE Defend( char * foeName, ITEMTYPE foePromisedAttack ) { defence = rock; break; } + return defence; } /* You need to define a results function, even if it isn't used diff --git a/src/link/C/agents/c-streetfighter.c b/src/link/C/agents/c_streetfighter.c similarity index 89% rename from src/link/C/agents/c-streetfighter.c rename to src/link/C/agents/c_streetfighter.c index c63939d..0516c26 100644 --- a/src/link/C/agents/c-streetfighter.c +++ b/src/link/C/agents/c_streetfighter.c @@ -1,5 +1,5 @@ /* - * c-streetfighter.c + * c_streetfighter.c * c-link-lib * * Created by Daniel Axtens on 20/04/10. @@ -20,13 +20,13 @@ ATTACKTYPE Attack( char * foe_name ) { /* Here we choose the thing that will hurt them if they go for the kill */ switch (attack.realAttack) { case rock: - result.promisedAttack = paper; + attack.promisedAttack = paper; break; case paper: - result.promisedAttack = scissors; + attack.promisedAttack = scissors; break; default: /* attack = scissors */ - result.promisedAttack = rock; + attack.promisedAttack = rock; break; } return attack; @@ -46,6 +46,7 @@ ITEMTYPE Defend( char * foeName, ITEMTYPE foePromisedAttack ) { defence = paper; break; } + return defence; } /* You need to define a results function, even if it isn't used diff --git a/src/link/C/c-link-lib.xcodeproj/project.pbxproj b/src/link/C/c-link-lib.xcodeproj/project.pbxproj index b01730e..c2f58fd 100644 --- a/src/link/C/c-link-lib.xcodeproj/project.pbxproj +++ b/src/link/C/c-link-lib.xcodeproj/project.pbxproj @@ -7,12 +7,12 @@ objects = { /* Begin PBXFileReference section */ + 2208AFE6118F28D800770C92 /* c_frenchie.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = c_frenchie.c; sourceTree = ""; }; + 2208AFE7118F28F400770C92 /* c_agents.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = c_agents.py; sourceTree = ""; }; 2291A1BB117EDB9600854CBE /* c_link.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = c_link.c; sourceTree = ""; }; - 2291A1BD117EE3FD00854CBE /* c-angel.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "c-angel.c"; sourceTree = ""; }; - 2291A1BE117EE3FD00854CBE /* c-lucifer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "c-lucifer.c"; sourceTree = ""; }; - 2291A1BF117EE3FD00854CBE /* c-streetfighter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "c-streetfighter.c"; sourceTree = ""; }; - 2291A1EC117FF85D00854CBE /* c-frechie.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "c-frechie.c"; sourceTree = ""; }; - 22C9FA0A118EE5ED003CF235 /* SampleAgents.py */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.python; path = SampleAgents.py; sourceTree = ""; }; + 2291A1BD117EE3FD00854CBE /* c_angel.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = c_angel.c; sourceTree = ""; }; + 2291A1BE117EE3FD00854CBE /* c_lucifer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = c_lucifer.c; sourceTree = ""; }; + 2291A1BF117EE3FD00854CBE /* c_streetfighter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = c_streetfighter.c; sourceTree = ""; }; 22F652F5117C679300A3793D /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; 22F652F6117C6C9500A3793D /* c_link.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = c_link.h; sourceTree = ""; }; /* End PBXFileReference section */ @@ -21,7 +21,7 @@ 08FB7794FE84155DC02AAC07 /* c-link-lib */ = { isa = PBXGroup; children = ( - 22C9FA0A118EE5ED003CF235 /* SampleAgents.py */, + 2208AFE7118F28F400770C92 /* c_agents.py */, 2291A1BC117EE3FD00854CBE /* agents */, 22F652F6117C6C9500A3793D /* c_link.h */, 2291A1BB117EDB9600854CBE /* c_link.c */, @@ -33,10 +33,10 @@ 2291A1BC117EE3FD00854CBE /* agents */ = { isa = PBXGroup; children = ( - 2291A1BD117EE3FD00854CBE /* c-angel.c */, - 2291A1BE117EE3FD00854CBE /* c-lucifer.c */, - 2291A1BF117EE3FD00854CBE /* c-streetfighter.c */, - 2291A1EC117FF85D00854CBE /* c-frechie.c */, + 2291A1BD117EE3FD00854CBE /* c_angel.c */, + 2291A1BE117EE3FD00854CBE /* c_lucifer.c */, + 2291A1BF117EE3FD00854CBE /* c_streetfighter.c */, + 2208AFE6118F28D800770C92 /* c_frenchie.c */, ); path = agents; sourceTree = ""; diff --git a/src/link/C/c_agents.py b/src/link/C/c_agents.py new file mode 100644 index 0000000..ae64410 --- /dev/null +++ b/src/link/C/c_agents.py @@ -0,0 +1,20 @@ +# add your agents to this file by copying the definition and adjusting +# you then need to modify simulate.py + +from link.externAgent import externAgent + +class c_angel (externAgent): + def __init__ (self): + externAgent.__init__(self, "./link/C/agents/c_angel") + +class c_lucifer (externAgent): + def __init__ (self): + externAgent.__init__(self, "./link/C/agents/c_lucifer") + +class c_streetfighter (externAgent): + def __init__ (self): + externAgent.__init__(self, "./link/C/agents/c_streetfighter") + +class c_frenchie (externAgent): + def __init__ (self): + externAgent.__init__(self, "./link/C/agents/c_frenchie") diff --git a/src/link/cangel.py b/src/link/cangel.py deleted file mode 100644 index 45a64d1..0000000 --- a/src/link/cangel.py +++ /dev/null @@ -1,8 +0,0 @@ -from uccProgComp import BaseAgent, LearningAgent, RandomAttack -from externAgent import externAgent -from rpsconst import * - -class CAngel (externAgent): - def __init__ (self): - externAgent.__init__(self, "./link/C/c-link-lib/agents/c-angel") - diff --git a/src/simulate.py b/src/simulate.py index 643dad0..7fa1bf2 100755 --- a/src/simulate.py +++ b/src/simulate.py @@ -6,10 +6,10 @@ Licensed under an MIT-style license: see the LICENSE file for details. ''' # Import and add your agents here: -from link.cangel import CAngel +from link.C.c_agents import c_angel, c_lucifer, c_streetfighter, c_frenchie from SampleAgents import Angel, Lucifer, Dummy, Frenchie, Streetfighter -Agents = [Lucifer, Frenchie, Streetfighter, CAngel] +Agents = [c_lucifer, Frenchie, c_streetfighter, c_angel] #################################### # Developers only past this point! # -- 2.20.1