From e4184557ebc33201e217e167d577128f710e4890 Mon Sep 17 00:00:00 2001 From: Daniel Axtens <dja@ucc.asn.au> 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 | Bin 5477 -> 5460 bytes src/link/C/c_agents.py | 20 ++++++++++++++++++ src/link/cangel.py | 8 ------- src/simulate.py | 4 ++-- 10 files changed, 44 insertions(+), 29 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 b01730e18685656a8799b527bf6685a7a0797d24..c2f58fd9cb5618fcf04d13cd51aa8c4c47a39a32 100644 GIT binary patch delta 305 zcmaE=bwz7JlY)VTqnoRlp`nGFk%fzefq}WXfwQHNg1(kQa(r4*YTo2n<|G~nGdUwO zRWEt6EVH64SeH3OmzxQyuEfcFEE&wn@rjdbSu`g$9b$`5%u7$rnViTR#|ab#vB9RO zPQJk?&KN)W17j+8a(qr{a%Ng;5mcs~2_!S0DO)f(zPO|)HMJxyGd-gOEU(L|ws|$n s14jIg*t~`<ml0@&6o)R5^x)99MmI=7OJ9eJ69|lq2nE9CjT~Ee041ndJ^%m! delta 322 zcmcbj^;By@(_~h5)yeEka~X9fFJ(&RR!Y`Q%u7$r(MwjEEXZsF6!l|H<pql7lqP4U zr51t24>GDve!?sUl>5z`Eew<^E-6Y)ElJBv&nSVZP?dLeHZ(MMbF(mYF)*+&HF0)w zRnXT`NY+g&N=?qlOr5-nDGp>VlnXIeQPJ7b&C$To(9puw)zlTJ)7aU~$k-I5GdMA~ zAScyvvL9mxJB+=PQFF2bE9>UDEDsn7Yu!AHEte7KY7P!vAZf;-Z-wr11ucCYE>0jY SGO{#uG{obD%?miT@Bjb^U|h}s 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! # -- GitLab