commit 0343ac399593d9b6895af2ef2b57e333dafe4385 Author: Andrew Kesterson Date: Mon May 18 12:47:34 2026 -0400 Add original source, circa 2006 diff --git a/Makefile b/Makefile new file mode 100755 index 0000000..5621ab4 --- /dev/null +++ b/Makefile @@ -0,0 +1,100 @@ +# SlickEdit generated file. Do not edit this file except in designated areas. +# -----Begin user-editable area----- + +# -----End user-editable area----- + +# Make command to use for dependencies +MAKE=gmake + +# If no configuration is specified, "Debug" will be used +ifndef "CFG" +CFG=Debug +endif + +# +# Configuration: Debug +# +ifeq "$(CFG)" "Debug" +OUTDIR=Debug +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/ConfigEngine.o \ + $(OUTDIR)/main.o $(OUTDIR)/MogCommon.o $(OUTDIR)/stlini.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) +ALL_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/ConfigEngine.o $(OUTDIR)/main.o \ + $(OUTDIR)/MogCommon.o $(OUTDIR)/stlini.o -lSDL_mixer -lSDL_sound \ + -lSDL_flic -lSDL_net -lSDL_image + +COMPILE=g++ -c "-DLINUX" -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTFILE)" $(ALL_OBJ) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif + +# +# Configuration: Release +# +ifeq "$(CFG)" "Release" +OUTDIR=Release +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/ConfigEngine.o \ + $(OUTDIR)/main.o $(OUTDIR)/MogCommon.o $(OUTDIR)/stlini.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) +ALL_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/ConfigEngine.o $(OUTDIR)/main.o \ + $(OUTDIR)/MogCommon.o $(OUTDIR)/stlini.o -lSDL_mixer -lSDL_sound \ + -lSDL_flic -lSDL_net -lSDL_image + +COMPILE=g++ -c "-DLINUX" -O2 -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O2 -o "$(OUTFILE)" $(ALL_OBJ) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif diff --git a/gfx/.svn/all-wcprops b/gfx/.svn/all-wcprops new file mode 100755 index 0000000..e96149e --- /dev/null +++ b/gfx/.svn/all-wcprops @@ -0,0 +1,179 @@ +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx +END +Deceased - Attack Front.gif +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Attack%20Front.gif +END +Deceased - Attack Rear.gif +K 25 +svn:wc:ra_dav:version-url +V 79 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Attack%20Rear.gif +END +Mog - Walk Right.gif +K 25 +svn:wc:ra_dav:version-url +V 73 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Walk%20Right.gif +END +Deceased - Up.gif +K 25 +svn:wc:ra_dav:version-url +V 68 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Up.gif +END +Mog - Back.gif +K 25 +svn:wc:ra_dav:version-url +V 65 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Back.gif +END +CompanySplash.gif +K 25 +svn:wc:ra_dav:version-url +V 64 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/CompanySplash.gif +END +Thumbs.db +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Thumbs.db +END +MainScreen.gif +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/MainScreen.gif +END +Deceased - Left.gif +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Left.gif +END +Deceased - Walk Right.gif +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Walk%20Right.gif +END +Mog - Walk Front.gif +K 25 +svn:wc:ra_dav:version-url +V 73 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Walk%20Front.gif +END +Deceased - Dead.gif +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Dead.gif +END +ToolSplash.gif +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/ToolSplash.gif +END +Mog - Walk Left.gif +K 25 +svn:wc:ra_dav:version-url +V 72 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Walk%20Left.gif +END +Mog - Action.gif +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Action.gif +END +Credits.gif +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Credits.gif +END +Mog - Right.gif +K 25 +svn:wc:ra_dav:version-url +V 66 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Right.gif +END +lst +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/lst +END +Mog - Walk Back.gif +K 25 +svn:wc:ra_dav:version-url +V 72 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Walk%20Back.gif +END +Deceased - Walk Front.gif +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Walk%20Front.gif +END +Deceased - Down.gif +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Down.gif +END +Mog - Status.gif +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Status.gif +END +Deceased - Walk Left.gif +K 25 +svn:wc:ra_dav:version-url +V 77 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Walk%20Left.gif +END +Mog - Walk Front.old.gif +K 25 +svn:wc:ra_dav:version-url +V 77 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Walk%20Front.old.gif +END +samplebg.jpg +K 25 +svn:wc:ra_dav:version-url +V 59 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/samplebg.jpg +END +Deceased - Right.gif +K 25 +svn:wc:ra_dav:version-url +V 71 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Right.gif +END +Mog - Front.gif +K 25 +svn:wc:ra_dav:version-url +V 66 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Front.gif +END +Deceased - Walk Back.gif +K 25 +svn:wc:ra_dav:version-url +V 77 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Deceased%20-%20Walk%20Back.gif +END +Mog - Left.gif +K 25 +svn:wc:ra_dav:version-url +V 65 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Mog%20-%20Left.gif +END diff --git a/gfx/.svn/entries b/gfx/.svn/entries new file mode 100755 index 0000000..6ccecca --- /dev/null +++ b/gfx/.svn/entries @@ -0,0 +1,1020 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Deceased - Attack Front.gif +file + + + + +2010-02-05T03:37:52.354498Z +b348a68783f4d89403ff7e4cb98794da +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +679 + +Deceased - Attack Rear.gif +file + + + + +2010-02-05T03:37:52.370123Z +0797b00d94606a249cb6e3093f6ab23a +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +577 + +Mog - Back.gif +file + + + + +2010-02-05T03:37:52.416998Z +0a5935eb1e07cd329678490e47b4e4b6 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +290 + +Deceased - Left.gif +file + + + + +2010-02-05T03:37:52.432623Z +d4d99185e2644660f33ff3e1d3fc5194 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +718 + +Mog - Walk Front.gif +file + + + + +2010-02-05T03:37:52.448248Z +be0ace32073d3dfc5295f334ed531981 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +1004 + +Deceased - Dead.gif +file + + + + +2010-02-05T03:37:52.463873Z +f3044e8a9be166fa04d46d1435c86b0a +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +683 + +Mog - Right.gif +file + + + + +2010-02-05T03:37:52.495123Z +11675d0a4e8a331310d33673ef795fe5 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +395 + +Mog - Action.gif +file + + + + +2010-02-05T03:37:52.479498Z +1ed2d3db2bbefa6876e05fb562b7a0d4 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +333 + +Credits.gif +file + + + + +2010-02-05T03:37:52.479498Z +447ea8b6f0c271523414637ba697699a +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +23350 + +Deceased - Walk Front.gif +file + + + + +2010-02-05T03:37:52.510748Z +e6330e48097eae36ada99dc10efa8e31 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +2480 + +Mog - Status.gif +file + + + + +2010-02-05T03:37:52.526373Z +22fe9479ead3be8f35b55289726001f9 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +1132 + +Deceased - Walk Left.gif +file + + + + +2010-02-05T03:37:52.526373Z +9327a4f9ab9e64ecbf9c59e2c090ced6 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +2171 + +Deceased - Walk Back.gif +file + + + + +2010-02-05T03:37:52.557623Z +9327a4f9ab9e64ecbf9c59e2c090ced6 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +2171 + +Mog - Walk Right.gif +file + + + + +2010-02-05T03:37:52.370123Z +4d3f32d401cd7d199e3d6d4236dc895e +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +1046 + +Deceased - Up.gif +file + + + + +2010-02-05T03:37:52.385748Z +d4d99185e2644660f33ff3e1d3fc5194 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +718 + +CompanySplash.gif +file + + + + +2010-02-05T03:37:52.416998Z +9630092cdbfef327b85cb993570f143e +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +11045 + +Thumbs.db +file + + + + +2010-02-05T03:37:52.416998Z +dc73ee87311a0267971f227c6f9e00e2 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +84992 + +MainScreen.gif +file + + + + +2010-02-05T03:37:52.432623Z +4920b179e2fb4a1f1dc4749e675627c2 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +19226 + +Levels +dir + +CVS +dir + +Deceased - Walk Right.gif +file + + + + +2010-02-05T03:37:52.448248Z +9546027d66f137d5bbe3611840d8d345 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +2473 + +ToolSplash.gif +file + + + + +2010-02-05T03:37:52.463873Z +92f0c8f4e20d075fae3c630f19555d45 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +64476 + +Mog - Walk Left.gif +file + + + + +2010-02-05T03:37:52.463873Z +d7e1c86c2f96681008ba4f3acdcd7f89 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +1026 + +lst +file + + + + +2010-02-05T03:37:52.495123Z +9f6ccdbeeb729114c8f9b0eb137278f7 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +278 + +Mog - Walk Back.gif +file + + + + +2010-02-05T03:37:52.495123Z +599800e82c6af43d506a5a1864f34e7e +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +970 + +Deceased - Down.gif +file + + + + +2010-02-05T03:37:52.510748Z +2b91a1b20ac5a2000fcc4adc8d5b2f71 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +796 + +Mog - Walk Front.old.gif +file + + + + +2010-02-05T03:37:52.526373Z +555f2b3ca0a623b1671e0cb96365bdc2 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +1293 + +samplebg.jpg +file + + + + +2010-02-05T03:37:52.541998Z +7c5a0c73963140cbe45ed03b46cb7460 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +73783 + +Mog - Front.gif +file + + + + +2010-02-05T03:37:52.557623Z +845368845c4847a8809f2572892021c7 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +330 + +Deceased - Right.gif +file + + + + +2010-02-05T03:37:52.541998Z +2b91a1b20ac5a2000fcc4adc8d5b2f71 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +796 + +Mog - Left.gif +file + + + + +2010-02-05T03:37:52.557623Z +77742159bb4077c0c4d5a2bde6232ff0 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +340 + diff --git a/gfx/.svn/prop-base/CompanySplash.gif.svn-base b/gfx/.svn/prop-base/CompanySplash.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/CompanySplash.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Credits.gif.svn-base b/gfx/.svn/prop-base/Credits.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Credits.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Attack Front.gif.svn-base b/gfx/.svn/prop-base/Deceased - Attack Front.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Attack Front.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Attack Rear.gif.svn-base b/gfx/.svn/prop-base/Deceased - Attack Rear.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Attack Rear.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Dead.gif.svn-base b/gfx/.svn/prop-base/Deceased - Dead.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Dead.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Down.gif.svn-base b/gfx/.svn/prop-base/Deceased - Down.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Down.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Left.gif.svn-base b/gfx/.svn/prop-base/Deceased - Left.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Left.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Right.gif.svn-base b/gfx/.svn/prop-base/Deceased - Right.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Right.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Up.gif.svn-base b/gfx/.svn/prop-base/Deceased - Up.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Up.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Walk Back.gif.svn-base b/gfx/.svn/prop-base/Deceased - Walk Back.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Walk Back.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Walk Front.gif.svn-base b/gfx/.svn/prop-base/Deceased - Walk Front.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Walk Front.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Walk Left.gif.svn-base b/gfx/.svn/prop-base/Deceased - Walk Left.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Walk Left.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Deceased - Walk Right.gif.svn-base b/gfx/.svn/prop-base/Deceased - Walk Right.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Deceased - Walk Right.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/MainScreen.gif.svn-base b/gfx/.svn/prop-base/MainScreen.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/MainScreen.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Action.gif.svn-base b/gfx/.svn/prop-base/Mog - Action.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Action.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Back.gif.svn-base b/gfx/.svn/prop-base/Mog - Back.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Back.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Front.gif.svn-base b/gfx/.svn/prop-base/Mog - Front.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Front.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Left.gif.svn-base b/gfx/.svn/prop-base/Mog - Left.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Left.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Right.gif.svn-base b/gfx/.svn/prop-base/Mog - Right.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Right.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Status.gif.svn-base b/gfx/.svn/prop-base/Mog - Status.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Status.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Walk Back.gif.svn-base b/gfx/.svn/prop-base/Mog - Walk Back.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Walk Back.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Walk Front.gif.svn-base b/gfx/.svn/prop-base/Mog - Walk Front.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Walk Front.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Walk Front.old.gif.svn-base b/gfx/.svn/prop-base/Mog - Walk Front.old.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Walk Front.old.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Walk Left.gif.svn-base b/gfx/.svn/prop-base/Mog - Walk Left.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Walk Left.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Mog - Walk Right.gif.svn-base b/gfx/.svn/prop-base/Mog - Walk Right.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Mog - Walk Right.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/Thumbs.db.svn-base b/gfx/.svn/prop-base/Thumbs.db.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/Thumbs.db.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/ToolSplash.gif.svn-base b/gfx/.svn/prop-base/ToolSplash.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/ToolSplash.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/prop-base/samplebg.jpg.svn-base b/gfx/.svn/prop-base/samplebg.jpg.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/.svn/prop-base/samplebg.jpg.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/.svn/text-base/CompanySplash.gif.svn-base b/gfx/.svn/text-base/CompanySplash.gif.svn-base new file mode 100755 index 0000000..291a64d Binary files /dev/null and b/gfx/.svn/text-base/CompanySplash.gif.svn-base differ diff --git a/gfx/.svn/text-base/Credits.gif.svn-base b/gfx/.svn/text-base/Credits.gif.svn-base new file mode 100755 index 0000000..3619892 Binary files /dev/null and b/gfx/.svn/text-base/Credits.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Attack Front.gif.svn-base b/gfx/.svn/text-base/Deceased - Attack Front.gif.svn-base new file mode 100755 index 0000000..ab6e5c6 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Attack Front.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Attack Rear.gif.svn-base b/gfx/.svn/text-base/Deceased - Attack Rear.gif.svn-base new file mode 100755 index 0000000..d66d2eb Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Attack Rear.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Dead.gif.svn-base b/gfx/.svn/text-base/Deceased - Dead.gif.svn-base new file mode 100755 index 0000000..c5c1273 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Dead.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Down.gif.svn-base b/gfx/.svn/text-base/Deceased - Down.gif.svn-base new file mode 100755 index 0000000..f5765b0 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Down.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Left.gif.svn-base b/gfx/.svn/text-base/Deceased - Left.gif.svn-base new file mode 100755 index 0000000..8f6d356 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Left.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Right.gif.svn-base b/gfx/.svn/text-base/Deceased - Right.gif.svn-base new file mode 100755 index 0000000..f5765b0 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Right.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Up.gif.svn-base b/gfx/.svn/text-base/Deceased - Up.gif.svn-base new file mode 100755 index 0000000..8f6d356 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Up.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Walk Back.gif.svn-base b/gfx/.svn/text-base/Deceased - Walk Back.gif.svn-base new file mode 100755 index 0000000..da3ce47 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Walk Back.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Walk Front.gif.svn-base b/gfx/.svn/text-base/Deceased - Walk Front.gif.svn-base new file mode 100755 index 0000000..b046971 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Walk Front.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Walk Left.gif.svn-base b/gfx/.svn/text-base/Deceased - Walk Left.gif.svn-base new file mode 100755 index 0000000..da3ce47 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Walk Left.gif.svn-base differ diff --git a/gfx/.svn/text-base/Deceased - Walk Right.gif.svn-base b/gfx/.svn/text-base/Deceased - Walk Right.gif.svn-base new file mode 100755 index 0000000..024b661 Binary files /dev/null and b/gfx/.svn/text-base/Deceased - Walk Right.gif.svn-base differ diff --git a/gfx/.svn/text-base/MainScreen.gif.svn-base b/gfx/.svn/text-base/MainScreen.gif.svn-base new file mode 100755 index 0000000..4e9b77f Binary files /dev/null and b/gfx/.svn/text-base/MainScreen.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Action.gif.svn-base b/gfx/.svn/text-base/Mog - Action.gif.svn-base new file mode 100755 index 0000000..6f93ec4 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Action.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Back.gif.svn-base b/gfx/.svn/text-base/Mog - Back.gif.svn-base new file mode 100755 index 0000000..d1a20d6 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Back.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Front.gif.svn-base b/gfx/.svn/text-base/Mog - Front.gif.svn-base new file mode 100755 index 0000000..4b98ba3 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Front.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Left.gif.svn-base b/gfx/.svn/text-base/Mog - Left.gif.svn-base new file mode 100755 index 0000000..5fcd454 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Left.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Right.gif.svn-base b/gfx/.svn/text-base/Mog - Right.gif.svn-base new file mode 100755 index 0000000..09266ed Binary files /dev/null and b/gfx/.svn/text-base/Mog - Right.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Status.gif.svn-base b/gfx/.svn/text-base/Mog - Status.gif.svn-base new file mode 100755 index 0000000..5d1af86 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Status.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Walk Back.gif.svn-base b/gfx/.svn/text-base/Mog - Walk Back.gif.svn-base new file mode 100755 index 0000000..698ddb3 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Walk Back.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Walk Front.gif.svn-base b/gfx/.svn/text-base/Mog - Walk Front.gif.svn-base new file mode 100755 index 0000000..3f73cee Binary files /dev/null and b/gfx/.svn/text-base/Mog - Walk Front.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Walk Front.old.gif.svn-base b/gfx/.svn/text-base/Mog - Walk Front.old.gif.svn-base new file mode 100755 index 0000000..33fee24 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Walk Front.old.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Walk Left.gif.svn-base b/gfx/.svn/text-base/Mog - Walk Left.gif.svn-base new file mode 100755 index 0000000..2dc70f1 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Walk Left.gif.svn-base differ diff --git a/gfx/.svn/text-base/Mog - Walk Right.gif.svn-base b/gfx/.svn/text-base/Mog - Walk Right.gif.svn-base new file mode 100755 index 0000000..ffd19b2 Binary files /dev/null and b/gfx/.svn/text-base/Mog - Walk Right.gif.svn-base differ diff --git a/gfx/.svn/text-base/Thumbs.db.svn-base b/gfx/.svn/text-base/Thumbs.db.svn-base new file mode 100755 index 0000000..672f9c5 Binary files /dev/null and b/gfx/.svn/text-base/Thumbs.db.svn-base differ diff --git a/gfx/.svn/text-base/ToolSplash.gif.svn-base b/gfx/.svn/text-base/ToolSplash.gif.svn-base new file mode 100755 index 0000000..7f9a25b Binary files /dev/null and b/gfx/.svn/text-base/ToolSplash.gif.svn-base differ diff --git a/gfx/.svn/text-base/lst.svn-base b/gfx/.svn/text-base/lst.svn-base new file mode 100755 index 0000000..2143369 --- /dev/null +++ b/gfx/.svn/text-base/lst.svn-base @@ -0,0 +1,11 @@ +./Deceased - Walk Back.gif +./Deceased - Walk Front.gif +./Deceased - Down.gif +./Deceased - Attack Front.gif +./Deceased - Attack Rear.gif +./Deceased - Walk Left.gif +./Deceased - Walk Right.gif +./Deceased - Up.gif +./Deceased - Left.gif +./Deceased - Dead.gif +./Deceased - Right.gif diff --git a/gfx/.svn/text-base/samplebg.jpg.svn-base b/gfx/.svn/text-base/samplebg.jpg.svn-base new file mode 100755 index 0000000..3312d04 Binary files /dev/null and b/gfx/.svn/text-base/samplebg.jpg.svn-base differ diff --git a/gfx/CVS/.svn/all-wcprops b/gfx/CVS/.svn/all-wcprops new file mode 100755 index 0000000..84f1ecb --- /dev/null +++ b/gfx/CVS/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/CVS +END +Repository +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/CVS/Repository +END +Root +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/CVS/Root +END +Entries +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/CVS/Entries +END diff --git a/gfx/CVS/.svn/entries b/gfx/CVS/.svn/entries new file mode 100755 index 0000000..ba2f8f4 --- /dev/null +++ b/gfx/CVS/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx/CVS +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Repository +file + + + + +2010-02-05T03:37:52.104498Z +b79c17515f70368d1ec288073c1a154d +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Root +file + + + + +2010-02-05T03:37:52.104498Z +7af14a164593104c1e7a07a572dd352a +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Entries +file + + + + +2010-02-05T03:37:52.104498Z +a8926a6569d2d7bee3762a3d8e171032 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +1557 + diff --git a/gfx/CVS/.svn/text-base/Entries.svn-base b/gfx/CVS/.svn/text-base/Entries.svn-base new file mode 100755 index 0000000..353e009 --- /dev/null +++ b/gfx/CVS/.svn/text-base/Entries.svn-base @@ -0,0 +1,29 @@ +/CompanySplash.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Credits.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Attack Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Attack Rear.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Dead.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Down.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Up.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/MainScreen.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Action.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Status.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Front.old.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/ToolSplash.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/lst/1.1.1.1/Sat Dec 31 23:55:08 2005// +/samplebg.jpg/1.1.1.1/Sat Dec 31 23:55:08 2005// +D/Levels//// diff --git a/gfx/CVS/.svn/text-base/Repository.svn-base b/gfx/CVS/.svn/text-base/Repository.svn-base new file mode 100755 index 0000000..ed51954 --- /dev/null +++ b/gfx/CVS/.svn/text-base/Repository.svn-base @@ -0,0 +1 @@ +games/MogsAdventure/gfx diff --git a/gfx/CVS/.svn/text-base/Root.svn-base b/gfx/CVS/.svn/text-base/Root.svn-base new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/CVS/.svn/text-base/Root.svn-base @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/CVS/Entries b/gfx/CVS/Entries new file mode 100755 index 0000000..353e009 --- /dev/null +++ b/gfx/CVS/Entries @@ -0,0 +1,29 @@ +/CompanySplash.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Credits.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Attack Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Attack Rear.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Dead.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Down.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Up.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Deceased - Walk Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/MainScreen.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Action.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Status.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Back.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Front.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Front.old.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Left.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Mog - Walk Right.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/ToolSplash.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/lst/1.1.1.1/Sat Dec 31 23:55:08 2005// +/samplebg.jpg/1.1.1.1/Sat Dec 31 23:55:08 2005// +D/Levels//// diff --git a/gfx/CVS/Repository b/gfx/CVS/Repository new file mode 100755 index 0000000..ed51954 --- /dev/null +++ b/gfx/CVS/Repository @@ -0,0 +1 @@ +games/MogsAdventure/gfx diff --git a/gfx/CVS/Root b/gfx/CVS/Root new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/CVS/Root @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/CompanySplash.gif b/gfx/CompanySplash.gif new file mode 100755 index 0000000..291a64d Binary files /dev/null and b/gfx/CompanySplash.gif differ diff --git a/gfx/Credits.gif b/gfx/Credits.gif new file mode 100755 index 0000000..3619892 Binary files /dev/null and b/gfx/Credits.gif differ diff --git a/gfx/Deceased - Attack Front.gif b/gfx/Deceased - Attack Front.gif new file mode 100755 index 0000000..ab6e5c6 Binary files /dev/null and b/gfx/Deceased - Attack Front.gif differ diff --git a/gfx/Deceased - Attack Rear.gif b/gfx/Deceased - Attack Rear.gif new file mode 100755 index 0000000..d66d2eb Binary files /dev/null and b/gfx/Deceased - Attack Rear.gif differ diff --git a/gfx/Deceased - Dead.gif b/gfx/Deceased - Dead.gif new file mode 100755 index 0000000..c5c1273 Binary files /dev/null and b/gfx/Deceased - Dead.gif differ diff --git a/gfx/Deceased - Down.gif b/gfx/Deceased - Down.gif new file mode 100755 index 0000000..f5765b0 Binary files /dev/null and b/gfx/Deceased - Down.gif differ diff --git a/gfx/Deceased - Left.gif b/gfx/Deceased - Left.gif new file mode 100755 index 0000000..8f6d356 Binary files /dev/null and b/gfx/Deceased - Left.gif differ diff --git a/gfx/Deceased - Right.gif b/gfx/Deceased - Right.gif new file mode 100755 index 0000000..f5765b0 Binary files /dev/null and b/gfx/Deceased - Right.gif differ diff --git a/gfx/Deceased - Up.gif b/gfx/Deceased - Up.gif new file mode 100755 index 0000000..8f6d356 Binary files /dev/null and b/gfx/Deceased - Up.gif differ diff --git a/gfx/Deceased - Walk Back.gif b/gfx/Deceased - Walk Back.gif new file mode 100755 index 0000000..da3ce47 Binary files /dev/null and b/gfx/Deceased - Walk Back.gif differ diff --git a/gfx/Deceased - Walk Front.gif b/gfx/Deceased - Walk Front.gif new file mode 100755 index 0000000..b046971 Binary files /dev/null and b/gfx/Deceased - Walk Front.gif differ diff --git a/gfx/Deceased - Walk Left.gif b/gfx/Deceased - Walk Left.gif new file mode 100755 index 0000000..da3ce47 Binary files /dev/null and b/gfx/Deceased - Walk Left.gif differ diff --git a/gfx/Deceased - Walk Right.gif b/gfx/Deceased - Walk Right.gif new file mode 100755 index 0000000..024b661 Binary files /dev/null and b/gfx/Deceased - Walk Right.gif differ diff --git a/gfx/Levels/.svn/all-wcprops b/gfx/Levels/.svn/all-wcprops new file mode 100755 index 0000000..05f6e48 --- /dev/null +++ b/gfx/Levels/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 53 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels +END diff --git a/gfx/Levels/.svn/entries b/gfx/Levels/.svn/entries new file mode 100755 index 0000000..1fae4be --- /dev/null +++ b/gfx/Levels/.svn/entries @@ -0,0 +1,34 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx/Levels +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +level1 +dir + +CVS +dir + diff --git a/gfx/Levels/CVS/.svn/all-wcprops b/gfx/Levels/CVS/.svn/all-wcprops new file mode 100755 index 0000000..023fc18 --- /dev/null +++ b/gfx/Levels/CVS/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 57 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/CVS +END +Repository +K 25 +svn:wc:ra_dav:version-url +V 68 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/CVS/Repository +END +Root +K 25 +svn:wc:ra_dav:version-url +V 62 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/CVS/Root +END +Entries +K 25 +svn:wc:ra_dav:version-url +V 65 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/CVS/Entries +END diff --git a/gfx/Levels/CVS/.svn/entries b/gfx/Levels/CVS/.svn/entries new file mode 100755 index 0000000..977c786 --- /dev/null +++ b/gfx/Levels/CVS/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx/Levels/CVS +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Repository +file + + + + +2010-02-05T03:37:51.963873Z +3a4089781216492d86ff159e23886fbf +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +31 + +Root +file + + + + +2010-02-05T03:37:51.963873Z +7af14a164593104c1e7a07a572dd352a +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Entries +file + + + + +2010-02-05T03:37:51.979498Z +f6c00464f17c6336d420fc70924e3184 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +13 + diff --git a/gfx/Levels/CVS/.svn/text-base/Entries.svn-base b/gfx/Levels/CVS/.svn/text-base/Entries.svn-base new file mode 100755 index 0000000..4c30d68 --- /dev/null +++ b/gfx/Levels/CVS/.svn/text-base/Entries.svn-base @@ -0,0 +1 @@ +D/level1//// diff --git a/gfx/Levels/CVS/.svn/text-base/Repository.svn-base b/gfx/Levels/CVS/.svn/text-base/Repository.svn-base new file mode 100755 index 0000000..af1b714 --- /dev/null +++ b/gfx/Levels/CVS/.svn/text-base/Repository.svn-base @@ -0,0 +1 @@ +games/MogsAdventure/gfx/Levels diff --git a/gfx/Levels/CVS/.svn/text-base/Root.svn-base b/gfx/Levels/CVS/.svn/text-base/Root.svn-base new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/Levels/CVS/.svn/text-base/Root.svn-base @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/Levels/CVS/Entries b/gfx/Levels/CVS/Entries new file mode 100755 index 0000000..4c30d68 --- /dev/null +++ b/gfx/Levels/CVS/Entries @@ -0,0 +1 @@ +D/level1//// diff --git a/gfx/Levels/CVS/Repository b/gfx/Levels/CVS/Repository new file mode 100755 index 0000000..af1b714 --- /dev/null +++ b/gfx/Levels/CVS/Repository @@ -0,0 +1 @@ +games/MogsAdventure/gfx/Levels diff --git a/gfx/Levels/CVS/Root b/gfx/Levels/CVS/Root new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/Levels/CVS/Root @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/Levels/level1/.svn/all-wcprops b/gfx/Levels/level1/.svn/all-wcprops new file mode 100755 index 0000000..9c6f855 --- /dev/null +++ b/gfx/Levels/level1/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 60 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1 +END +floor.gif +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/floor.gif +END +Thumbs.db +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/Thumbs.db +END +walls.gif +K 25 +svn:wc:ra_dav:version-url +V 70 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/walls.gif +END diff --git a/gfx/Levels/level1/.svn/entries b/gfx/Levels/level1/.svn/entries new file mode 100755 index 0000000..58375bb --- /dev/null +++ b/gfx/Levels/level1/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx/Levels/level1 +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +floor.gif +file + + + + +2010-02-05T03:37:51.807623Z +6b4605b1b0c7fac7092236f29dbc3fca +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +180652 + +Thumbs.db +file + + + + +2010-02-05T03:37:51.807623Z +dc1e19f351750387fbbd0fe02ea21885 +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +8192 + +walls.gif +file + + + + +2010-02-05T03:37:51.823248Z +e68097ea100068f2a5615d48b7b67fba +2007-05-26T21:27:56.375027Z +4 +andrew +has-props + + + + + + + + + + + + + + + + + + + + +52136 + +CVS +dir + diff --git a/gfx/Levels/level1/.svn/prop-base/Thumbs.db.svn-base b/gfx/Levels/level1/.svn/prop-base/Thumbs.db.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/Levels/level1/.svn/prop-base/Thumbs.db.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/Levels/level1/.svn/prop-base/floor.gif.svn-base b/gfx/Levels/level1/.svn/prop-base/floor.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/Levels/level1/.svn/prop-base/floor.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/Levels/level1/.svn/prop-base/walls.gif.svn-base b/gfx/Levels/level1/.svn/prop-base/walls.gif.svn-base new file mode 100755 index 0000000..5e9587e --- /dev/null +++ b/gfx/Levels/level1/.svn/prop-base/walls.gif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/gfx/Levels/level1/.svn/text-base/Thumbs.db.svn-base b/gfx/Levels/level1/.svn/text-base/Thumbs.db.svn-base new file mode 100755 index 0000000..ed0f081 Binary files /dev/null and b/gfx/Levels/level1/.svn/text-base/Thumbs.db.svn-base differ diff --git a/gfx/Levels/level1/.svn/text-base/floor.gif.svn-base b/gfx/Levels/level1/.svn/text-base/floor.gif.svn-base new file mode 100755 index 0000000..4a0bd09 Binary files /dev/null and b/gfx/Levels/level1/.svn/text-base/floor.gif.svn-base differ diff --git a/gfx/Levels/level1/.svn/text-base/walls.gif.svn-base b/gfx/Levels/level1/.svn/text-base/walls.gif.svn-base new file mode 100755 index 0000000..46ed965 Binary files /dev/null and b/gfx/Levels/level1/.svn/text-base/walls.gif.svn-base differ diff --git a/gfx/Levels/level1/CVS/.svn/all-wcprops b/gfx/Levels/level1/CVS/.svn/all-wcprops new file mode 100755 index 0000000..622cfc9 --- /dev/null +++ b/gfx/Levels/level1/CVS/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 64 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/CVS +END +Repository +K 25 +svn:wc:ra_dav:version-url +V 75 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/CVS/Repository +END +Root +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/CVS/Root +END +Entries +K 25 +svn:wc:ra_dav:version-url +V 72 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/gfx/Levels/level1/CVS/Entries +END diff --git a/gfx/Levels/level1/CVS/.svn/entries b/gfx/Levels/level1/CVS/.svn/entries new file mode 100755 index 0000000..f2ce6f0 --- /dev/null +++ b/gfx/Levels/level1/CVS/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/gfx/Levels/level1/CVS +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Repository +file + + + + +2010-02-05T03:37:51.776373Z +eebf877e24d6488d463a8198e243d779 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +38 + +Root +file + + + + +2010-02-05T03:37:51.776373Z +7af14a164593104c1e7a07a572dd352a +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Entries +file + + + + +2010-02-05T03:37:51.776373Z +ea4ec0721ce48298f97e3373fc8c79d9 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +94 + diff --git a/gfx/Levels/level1/CVS/.svn/text-base/Entries.svn-base b/gfx/Levels/level1/CVS/.svn/text-base/Entries.svn-base new file mode 100755 index 0000000..4c23124 --- /dev/null +++ b/gfx/Levels/level1/CVS/.svn/text-base/Entries.svn-base @@ -0,0 +1,3 @@ +/floor.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/walls.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +D diff --git a/gfx/Levels/level1/CVS/.svn/text-base/Repository.svn-base b/gfx/Levels/level1/CVS/.svn/text-base/Repository.svn-base new file mode 100755 index 0000000..810a4df --- /dev/null +++ b/gfx/Levels/level1/CVS/.svn/text-base/Repository.svn-base @@ -0,0 +1 @@ +games/MogsAdventure/gfx/Levels/level1 diff --git a/gfx/Levels/level1/CVS/.svn/text-base/Root.svn-base b/gfx/Levels/level1/CVS/.svn/text-base/Root.svn-base new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/Levels/level1/CVS/.svn/text-base/Root.svn-base @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/Levels/level1/CVS/Entries b/gfx/Levels/level1/CVS/Entries new file mode 100755 index 0000000..4c23124 --- /dev/null +++ b/gfx/Levels/level1/CVS/Entries @@ -0,0 +1,3 @@ +/floor.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +/walls.gif/1.1.1.1/Sat Dec 31 23:55:08 2005// +D diff --git a/gfx/Levels/level1/CVS/Repository b/gfx/Levels/level1/CVS/Repository new file mode 100755 index 0000000..810a4df --- /dev/null +++ b/gfx/Levels/level1/CVS/Repository @@ -0,0 +1 @@ +games/MogsAdventure/gfx/Levels/level1 diff --git a/gfx/Levels/level1/CVS/Root b/gfx/Levels/level1/CVS/Root new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/gfx/Levels/level1/CVS/Root @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/gfx/Levels/level1/Thumbs.db b/gfx/Levels/level1/Thumbs.db new file mode 100755 index 0000000..ed0f081 Binary files /dev/null and b/gfx/Levels/level1/Thumbs.db differ diff --git a/gfx/Levels/level1/floor.gif b/gfx/Levels/level1/floor.gif new file mode 100755 index 0000000..4a0bd09 Binary files /dev/null and b/gfx/Levels/level1/floor.gif differ diff --git a/gfx/Levels/level1/walls.gif b/gfx/Levels/level1/walls.gif new file mode 100755 index 0000000..46ed965 Binary files /dev/null and b/gfx/Levels/level1/walls.gif differ diff --git a/gfx/MainScreen.gif b/gfx/MainScreen.gif new file mode 100755 index 0000000..4e9b77f Binary files /dev/null and b/gfx/MainScreen.gif differ diff --git a/gfx/Mog - Action.gif b/gfx/Mog - Action.gif new file mode 100755 index 0000000..6f93ec4 Binary files /dev/null and b/gfx/Mog - Action.gif differ diff --git a/gfx/Mog - Back.gif b/gfx/Mog - Back.gif new file mode 100755 index 0000000..d1a20d6 Binary files /dev/null and b/gfx/Mog - Back.gif differ diff --git a/gfx/Mog - Front.gif b/gfx/Mog - Front.gif new file mode 100755 index 0000000..4b98ba3 Binary files /dev/null and b/gfx/Mog - Front.gif differ diff --git a/gfx/Mog - Left.gif b/gfx/Mog - Left.gif new file mode 100755 index 0000000..5fcd454 Binary files /dev/null and b/gfx/Mog - Left.gif differ diff --git a/gfx/Mog - Right.gif b/gfx/Mog - Right.gif new file mode 100755 index 0000000..09266ed Binary files /dev/null and b/gfx/Mog - Right.gif differ diff --git a/gfx/Mog - Status.gif b/gfx/Mog - Status.gif new file mode 100755 index 0000000..5d1af86 Binary files /dev/null and b/gfx/Mog - Status.gif differ diff --git a/gfx/Mog - Walk Back.gif b/gfx/Mog - Walk Back.gif new file mode 100755 index 0000000..698ddb3 Binary files /dev/null and b/gfx/Mog - Walk Back.gif differ diff --git a/gfx/Mog - Walk Front.gif b/gfx/Mog - Walk Front.gif new file mode 100755 index 0000000..3f73cee Binary files /dev/null and b/gfx/Mog - Walk Front.gif differ diff --git a/gfx/Mog - Walk Front.old.gif b/gfx/Mog - Walk Front.old.gif new file mode 100755 index 0000000..33fee24 Binary files /dev/null and b/gfx/Mog - Walk Front.old.gif differ diff --git a/gfx/Mog - Walk Left.gif b/gfx/Mog - Walk Left.gif new file mode 100755 index 0000000..2dc70f1 Binary files /dev/null and b/gfx/Mog - Walk Left.gif differ diff --git a/gfx/Mog - Walk Right.gif b/gfx/Mog - Walk Right.gif new file mode 100755 index 0000000..ffd19b2 Binary files /dev/null and b/gfx/Mog - Walk Right.gif differ diff --git a/gfx/Thumbs.db b/gfx/Thumbs.db new file mode 100755 index 0000000..672f9c5 Binary files /dev/null and b/gfx/Thumbs.db differ diff --git a/gfx/ToolSplash.gif b/gfx/ToolSplash.gif new file mode 100755 index 0000000..7f9a25b Binary files /dev/null and b/gfx/ToolSplash.gif differ diff --git a/gfx/lst b/gfx/lst new file mode 100755 index 0000000..2143369 --- /dev/null +++ b/gfx/lst @@ -0,0 +1,11 @@ +./Deceased - Walk Back.gif +./Deceased - Walk Front.gif +./Deceased - Down.gif +./Deceased - Attack Front.gif +./Deceased - Attack Rear.gif +./Deceased - Walk Left.gif +./Deceased - Walk Right.gif +./Deceased - Up.gif +./Deceased - Left.gif +./Deceased - Dead.gif +./Deceased - Right.gif diff --git a/gfx/samplebg.jpg b/gfx/samplebg.jpg new file mode 100755 index 0000000..3312d04 Binary files /dev/null and b/gfx/samplebg.jpg differ diff --git a/src/.svn/all-wcprops b/src/.svn/all-wcprops new file mode 100755 index 0000000..f15d1d0 --- /dev/null +++ b/src/.svn/all-wcprops @@ -0,0 +1,41 @@ +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src +END +MogCommon.h +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/MogCommon.h +END +main.cpp +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/main.cpp +END +Actor.cpp +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/Actor.cpp +END +Makefile +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/Makefile +END +Actor.h +K 25 +svn:wc:ra_dav:version-url +V 54 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/Actor.h +END +bugs.txt +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/bugs.txt +END diff --git a/src/.svn/entries b/src/.svn/entries new file mode 100755 index 0000000..1249694 --- /dev/null +++ b/src/.svn/entries @@ -0,0 +1,238 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/src +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +MogCommon.h +file + + + + +2010-02-05T03:37:53.385748Z +c9039651571ef772060dcaea834d191d +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +368 + +main.cpp +file + + + + +2010-02-05T03:37:53.385748Z +5c499c5fcea733b2d91b22f213eab9b6 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +5094 + +Actor.cpp +file + + + + +2010-02-05T03:37:53.385748Z +6b86c5a89316fceb407a1b040d8c2ab6 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +11006 + +CVS +dir + +exampleINI +dir + +Makefile +file + + + + +2010-02-05T03:37:53.385748Z +dd1afb701dd2545bd1d3af3e9e683881 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +1844 + +Actor.h +file + + + + +2010-02-05T03:37:53.401373Z +5babb2aa6f5116d57bc7090275c82383 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +3320 + +bugs.txt +file + + + + +2010-02-05T03:37:53.401373Z +57445286ad8b926d083c2852877554ac +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +171 + diff --git a/src/.svn/text-base/Actor.cpp.svn-base b/src/.svn/text-base/Actor.cpp.svn-base new file mode 100755 index 0000000..8b7ee53 --- /dev/null +++ b/src/.svn/text-base/Actor.cpp.svn-base @@ -0,0 +1,496 @@ +/******************************************************************* +* +* DESCRIPTION: Code for actors and sprites +* +* AUTHOR: Andrew Kesterson andrew@aklabs.net +* +* HISTORY: $Log: Actor.cpp,v $ +* HISTORY: Revision 1.2 2006/01/01 19:10:00 andrew +* HISTORY: Added Robert's STLINI library and started work on the ConfigEngine. Moved some definitions around, and changed the order of includes to prevent broken declaration/definitions. +* HISTORY: +* +* DATE:12/31/2005 +* +*******************************************************************/ + +/** include files **/ + +#include "MogCommon.h" + +#warning This file still contains FIXMEs. + +/** local definitions **/ + +/* default settings */ + +/** external functions **/ + +/** external data **/ + +/** internal functions **/ + +// returns true if flag y in bitmask x +#define HASBIT(x, y) (x & y == y) +// toggles flag y in bitmask x +#define TOGGLEBIT(x, y) (x = x ^ y) +void moveBBox(BoundingBox *bbox, int x, int y); + +/** public data **/ + +/** private data **/ + +/** public functions **/ + +/** private functions **/ + + +void moveBBox(BoundingBox *bbox, int x, int y) +{ + if (bbox != NULL) { + bbox->sx += x; + bbox->sy += y; + } +} + +ActorCmd::ActorCmd() +{ + this->cmd = 0; + this->cmdFlags = 0; + this->target = 0; +} + +ActorCmd::ActorCmd(unsigned int c, unsigned int cf, void *t) +{ + this->cmd = c; + this->cmdFlags = cf; + this->target = t; +} + +Sprite2D::Sprite2D() +{ + this->bitmap = NULL; + this->fh = 0; + this->fw = 0; + this->numframes = 0; + this->frameticks = 0; +} + +Sprite2D::Sprite2D(char *gfxname, long ticks, int frames, int fw, int fh) +{ + this->init(gfxname,ticks ,frames ,fw ,fh); +} + +void Sprite2D::init(char *gfxname, long ticks, int frames, int fw, int fh) +{ + this->bitmap = IMG_Load(gfxname); + if ( this->bitmap == NULL ) { + cout << "failed to load bitmap : " << gfxname << ".\n"; + exit(1); + } + else { + this->fh = fh; + this->fw = fw; + this->numframes = frames; + this->frameticks = ticks; + } +} + +int Sprite2D::getfh() +{ + return this->fh; +} + +int Sprite2D::getfw() +{ + return this->fw; +} + +int Sprite2D::getframes() +{ + return this->numframes; +} + +int Sprite2D::getticks() +{ + return this->frameticks; +} + +void Sprite2D::drawFrame(SDL_Surface *canvas, int frame, int px, int py, int flip) +{ + int sx, sy; + + sx = 0 + (this->fw * frame); + sy = 0; + + if ( this->bitmap == NULL ) { + cout << "I was passed a NULL bitmap. EEK! (the cat)\n"; + } + + // check for out of bounds image copy + if ( sx > this->bitmap->w || sy > this->bitmap->h) { + // EEK! (the cat) + // re-call this with frame 0 and return + drawFrame(canvas, 0,px,py, flip); + return; + } + + if ( flip == 0) { + // don't flip + // (deprecated, I need to get rid of this) + SDL_Rect srcrect = {sx, sy, this->fw, this->fh}; + SDL_Rect dstrect = {px, py, this->fw, this->fh}; + SDL_BlitSurface(this->bitmap, &srcrect, canvas , &dstrect); + } + else if ( flip == 1 ) { + // mirror X + } + else if ( flip == 2 ) { + // flip Y + } + +} + +Sprite2D::~Sprite2D() +{ + if ( this->bitmap != NULL ) { + SDL_FreeSurface(this->bitmap); + } +} + +Actor2D::Actor2D() +{ + this->sprite = NULL; + this->init(NULL, 0); +} + +Actor2D::Actor2D(Sprite2D *spr, float speedOverride) +{ + this->init(spr,speedOverride ); +} + +// FIXME: change the speedOverride stuff to use the new array, instead of +// a constant override. +void Actor2D::init(Sprite2D *spr, float speedOverride) +{ + for ( int i = 0; i < NUMSTATES; i++ ) { + this->stateSprites[i] = NULL; + // NULL sprites in the stateSprites will make + // the sprite use its default sprite (spr) + } + if ( spr != NULL ) { + this->sprite = spr; + this->bbox.w = this->sprite->getfw(); + this->bbox.h = this->sprite->getfh(); + } + //this->animSpeedOverride = speedOverride; + this->animCurrFrame = 0; + this->animCurrTicks = 0; + this->bbox.sx = this->px = 0; + this->bbox.sy = this->py = 0; + this->lastTicks = 0; + this->vx = 0; + this->vy = 0; + this->state = 0; +} + +int Actor2D::getpx() +{ + return px; +} + +int Actor2D::getpy() +{ + return py; +} + +int Actor2D::getvx() +{ + return vx; +} + +int Actor2D::getvy() +{ + return vy; +} + +void Actor2D::move(int x, int y) +{ + px += x; + py += y; +} + +void Actor2D::moveAbs(int x, int y) +{ + px = x; + py = y; +} + +void Actor2D::setVelocity(int x, int y) +{ + vx = x; + vy = y; +} + +void Actor2D::update() +{ + //long newticks = SDL_GetTicks(); + long newticks = clock(); + long elapsed = newticks - this->lastTicks; + this->lastTicks = newticks; + + static long lastState = this->state; + lastState = this->state; + + this->procQueue(); + + if ( this->hasState(ACTOR_MOVELEFT) ) this->px -= this->vx; + if ( this->hasState(ACTOR_MOVERIGHT) ) this->px += this->vx; + if ( this->hasState(ACTOR_MOVEDOWN) ) this->py += this->vy; + if ( this->hasState(ACTOR_MOVEUP) ) this->py -= this->vy; + + + // FIXME: Sprite timing is semi-broken. + if ( elapsed >= sprite->getticks() && sprite->getframes() > 1 && sprite != NULL ) { + this->animCurrFrame++; + if ( this->animCurrFrame >= sprite->getframes() ) { + this->animCurrFrame = 0; + } + } + + moveBBox(&this->bbox, this->vx, this->vy); +} + +void Actor2D::render(SDL_Surface *canvas) +{ + this->sprite->drawFrame(canvas, this->animCurrFrame, + this->px, this->py, 0); +} + +long Actor2D::getState() +{ + return this->state; +} + +void Actor2D::setState(long state) +{ + this->state = state; +} + +void Actor2D::addState(long newstate) +{ + if (this->hasState(newstate)) return; + else this->state = this->state | newstate; +} + +void Actor2D::delState(long oldstate) +{ + if ( this->hasState(oldstate) ) { + this->state = this->state ^ oldstate; + } + else { + return; + } +} + +int Actor2D::hasState(long checkstate) +{ + if ( (this->state & checkstate) == checkstate) { + return true; + } + else { + return false; + } +} + +void Actor2D::setSprite(Sprite2D *spr) +{ + if ( this->sprite != spr && spr != NULL ) { + this->sprite = spr; + this->animCurrTicks = 0; + this->animCurrFrame = 0; + this->lastTicks = 0; + } +} + +void Actor2D::setStateSprite(Sprite2D *spr, long state) +{ + if ( spr != NULL ) { + this->stateSprites[state] = spr; + } +} + +void Actor2D::command(int cmd, int flags, void *target) +{ + this->cmdList.push(ActorCmd(cmd, flags, target)); +} + +void Actor2D::command(ActorCmd cmd) +{ + this->cmdList.push(cmd); +} + +void Actor2D::procQueue() +{ + ActorCmd cmd; + Sprite2D *n = NULL; + // process the actor's command queue + while ( !this->cmdList.empty() ) { + cmd = this->cmdList.front(); + switch ( cmd.cmd ) { + case ACTOR_MOVELEFT: + this->addState(ACTOR_MOVELEFT); + this->setSprite(this->stateSprites[ACTOR_MOVELEFT]); + break; + case ACTOR_MOVERIGHT: + this->addState(ACTOR_MOVERIGHT); + this->setSprite(this->stateSprites[ACTOR_MOVERIGHT]); + break; + case ACTOR_MOVEDOWN: + this->addState(ACTOR_MOVEDOWN); + this->setSprite(this->stateSprites[ACTOR_MOVEDOWN]); + break; + case ACTOR_MOVEUP: + this->addState(ACTOR_MOVEUP); + this->setSprite(this->stateSprites[ACTOR_MOVEUP]); + break; + case ACTOR_ATTACK: + this->addState(ACTOR_ATTACK); + this->setSprite(this->stateSprites[ACTOR_ATTACK]); + break; + case ACTOR_IDLE: + // stop all of the current states + if ( !cmd.cmdFlags ) { + this->setState(ACTOR_IDLE); + } + // (or) get rid of any states outlined in the cmdFlags + else this->delState(cmd.cmdFlags); + + if ( this->hasState(ACTOR_MOVELEFT) ) { + n = this->stateSprites[SPR_STILLLEFT]; + } + else if (this->hasState(ACTOR_MOVERIGHT) ) { + n = this->stateSprites[SPR_STILLRIGHT]; + } + else if (this->hasState(ACTOR_MOVEUP) ) { + n = this->stateSprites[SPR_STILLUP]; + } + else if ( this->hasState(ACTOR_MOVEDOWN) ) { + n = this->stateSprites[SPR_STILLDOWN]; + } + if ( n != NULL ) this->setSprite(n); + + break; + case ACTOR_SEEK: + this->addState(ACTOR_SEEK); + break; + case ACTOR_SET_TYPE: + this->addState(cmd.cmdFlags); + break; + default: + break; + } + this->cmdList.pop();; + } +} + +bool Actor2D::collidesWith(Actor2D *actor) +{ + if ( ((actor->bbox.sx > this->bbox.sx && + actor->bbox.sx < this->bbox.sx + this->bbox.w) && + (actor->bbox.sy > this->bbox.sy && + actor->bbox.sy < this->bbox.sy + this->bbox.h)) ) { + // ^^^ actor is inside of this + return false; + } + else if ((this->bbox.sx > actor->bbox.sx && + this->bbox.sx < actor->bbox.sx + actor->bbox.w) && + (this->bbox.sy > actor->bbox.sy && + this->bbox.sy < actor->bbox.sy + actor->bbox.h)){ + // ^^^ this is inside of actor + return false; + } + else return true; +} + +// FIXME: change the speedOverride stuff to use the new array, instead of +// a constant override. +AIActor::AIActor(Sprite2D *spr, float speedOverride, + unsigned int target, unsigned int maxrange) +{ + this->primTarget = target; + this->range = maxrange; + this->target = NULL; + this->sprite = NULL; + this->setSprite(spr); + //this->animSpeedOverride = speedOverride; +} + +// FIXME: ugly. +void AIActor::updateAI(std::vector actorList) +{ + // check the state and position of each actor within range of the AI + // to see if we need to react to them (ie, if they will change our state) + // this is the "default" AI that will wander in the given area until + // a creature of the appropriate type walks into the area, and then it will + // move to it to attack it + + Actor2D *actor = NULL; + unsigned int dist; + double dX = 0.00; + double dY = 0.00; + + if ( this->target == NULL || (this->target != NULL && this->target->hasState(ACTOR_DEAD))) { + for (unsigned int i = 0; i < actorList.size() ; i++ ) { + actor = actorList.at(i); + if ( actor->hasState(this->primTarget) ) { + this->target = actor; + break; + } + else continue; + } + } + + if ( this->target == NULL ) { + this->command(ACTOR_IDLE, 0, NULL); + return; + } + + // the distance is calculated as the hypotenuse of a triangle between the two sprites and + // an imaginary third converging point somewhere at a right angle. There's probly a faster way to + // do this. + + dX = this->px - this->target->getpx(); + dX *= dX; + dY = this->py - this->target->getpy(); + dY *= dY; + dist = (unsigned int) sqrt( dX + dY ); + + if ( dist < this->range || this->target == actor) { + if ( !this->collidesWith(this->target) ) { + this->command(ACTOR_IDLE, 0, NULL); + if ( this->target->getpx() > this->px ) { + this->command(ACTOR_MOVERIGHT, 0, NULL); + } + else if ( this->target->getpx() < this->px ) { + this->command(ACTOR_MOVELEFT, 0, NULL); + } + if ( this->target->getpy() > this->py ) { + this->command(ACTOR_MOVEDOWN, 0, NULL); + } + if ( this->target->getpy() < this->py ) { + this->command(ACTOR_MOVEUP, 0, NULL); + } + this->command(ACTOR_SEEK, 0, this->target); + // do a little cheating here.... (stop the "jitter" effect) + if ( dist < (unsigned int) this->vx ) { + this->px = target->getpx(); + } + if ( dist < (unsigned int) this->vy ) { + this->py = target->getpy(); + } + } + else { + this->command(ACTOR_ATTACK, 0, this->target); + } + } +} diff --git a/src/.svn/text-base/Actor.h.svn-base b/src/.svn/text-base/Actor.h.svn-base new file mode 100755 index 0000000..99b567f --- /dev/null +++ b/src/.svn/text-base/Actor.h.svn-base @@ -0,0 +1,136 @@ +#ifndef _ACTOR_H_ +#define _ACTOR_H_ +// no, I will NOT use #pragma once. It's not standard. don't ask. + + +// sprite defines +#define SPRANIMS 12 // number of different animations per sprite +// stills +#define SPR_STILLDOWN 0 +#define SPR_STILLUP 1 +#define SPR_STILLLEFT 2 +#define SPR_STILLRIGHT 3 +// walkers +#define SPR_MOVEDOWN 4 +#define SPR_MOVEUP 5 +#define SPR_MOVELEFT 6 +#define SPR_MOVERIGHT 7 +// states +#define SPR_ATTACK 8 +#define SPR_DEAD 9 +#define SPR_USE 10 +#define SPR_TAKEDAMAGE 11 + + +// state defines +#define NUMSTATES 20 + +#define ACTOR_MOVELEFT 2 +#define ACTOR_MOVERIGHT 4 +#define ACTOR_MOVEUP 8 +#define ACTOR_MOVEDOWN 16 +#define ACTOR_IDLE 32 +#define ACTOR_ATTACK 64 +#define ACTOR_HIDE 128 +#define ACTOR_SEEK 256 +#define ACTOR_DEAD 512 +#define ACTOR_USE 1024 +// end the AI+Sprite states, start type states +#define ACTOR_TYPE_PLAYER 2048 +#define ACTOR_TYPE_BADDIE 4096 +#define ACTOR_TYPE_ITEM 8192 +#define ACTOR_TYPE_EFFECT 16384 +// these aren't really states, they're commands +#define ACTOR_TAKEDAMAGE 32768 +#define ACTOR_SET_TYPE 65536 + +typedef struct +{ + unsigned int sx, sy, w, h; +} BoundingBox; + +struct ActorCmd { + unsigned int cmd; + unsigned int cmdFlags; + void *target; + ActorCmd(); + ActorCmd(unsigned int c, unsigned int cf, void *target); +}; + +class Sprite2D +{ +protected: + SDL_Surface *bitmap; + unsigned int fw, fh; + unsigned long frameticks; + unsigned int numframes; +public: + Sprite2D(); + Sprite2D(char *gfxname, long ticks, int frames, int fw, int fh); + void init(char *gfxname, long ticks, int frames, int fw, int fh); + void drawFrame(SDL_Surface *canvas, int frame, int px, int py, int flip); + int getfw(); + int getfh(); + int getticks(); + int getframes(); + ~Sprite2D(); +}; + +class Actor2D +{ +protected: + int px, py; + int vx, vy; + int animCurrFrame; + int animCurrTicks; + unsigned long lastTicks; + float animSpeedOverride; + long state; + Sprite2D *sprite; // the default sprite + Sprite2D *stateSprites[NUMSTATES]; // the per-state sprites + std::queue cmdList; // FIFO command queue for the actor + + void setState(long state); + void addState(long state); + void delState(long state); + void procQueue(); +public: + BoundingBox bbox; + Actor2D(); + Actor2D(Sprite2D *spr, float speedOverride); + void init(Sprite2D *spr, float speedOverride); + int getpx(); + int getpy(); + int getvx(); + int getvy(); + // state manipulation + long getState(); + int hasState(long state); + // position and velocity manipulation + void move(int x, int y); + void moveAbs(int x, int y); + void setVelocity(int x, int y); + void update(); + bool collidesWith(Actor2D *actor); + // rendering and sprite manipulation + void setSprite(Sprite2D *spr); + void render(SDL_Surface *canvas); + void setStateSprite(Sprite2D *spr, long state); + // other stuff + void command(int cmd, int flags, void *target); + void command(ActorCmd cmd); +}; + +class AIActor : public Actor2D +{ +protected: + unsigned int primTarget; // type of actor it targets + unsigned int range; // the range it will pursue the target at + Actor2D *target; // the target it's currently moving to +public: + AIActor(Sprite2D *spr, float speedOverride, + unsigned int target, unsigned int maxrange); + void updateAI(std::vector actorList); +}; + +#endif // _ACTOR_H_ diff --git a/src/.svn/text-base/Makefile.svn-base b/src/.svn/text-base/Makefile.svn-base new file mode 100755 index 0000000..8657322 --- /dev/null +++ b/src/.svn/text-base/Makefile.svn-base @@ -0,0 +1,92 @@ +# Visual SlickEdit generated file. Do not edit this file except in designated areas. +# -----Begin user-editable area----- + +# -----End user-editable area----- + +# Make command to use for dependencies +MAKECMD=gmake + +# If no configuration is specified, "Debug" will be used +ifndef "CFG" +CFG=Debug +endif + +# +# Configuration: Debug +# +ifeq "$(CFG)" "Debug" +OUTDIR=Debug +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/main.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) + +COMPILE=g++ -c -DLINUX -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTFILE)" $(OBJ) $(CFG_LIB) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif + +# +# Configuration: Release +# +ifeq "$(CFG)" "Release" +OUTDIR=Release +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/main.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) + +COMPILE=g++ -c -DLINUX -O2 -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O2 -o "$(OUTFILE)" $(OBJ) $(CFG_LIB) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif diff --git a/src/.svn/text-base/MogCommon.h.svn-base b/src/.svn/text-base/MogCommon.h.svn-base new file mode 100755 index 0000000..aeb52a5 --- /dev/null +++ b/src/.svn/text-base/MogCommon.h.svn-base @@ -0,0 +1,21 @@ +#ifndef _MOGCOMMON_H_ +#define _MOGCOMMON_H_ + +#include +#include +// won't need these until later ..... +//#include +//#include +//#include +//#include + +#include +#include +#include +#include + +#include "Actor.h" + +using std::cout; + +#endif // _MOGCOMMON_H_ diff --git a/src/.svn/text-base/bugs.txt.svn-base b/src/.svn/text-base/bugs.txt.svn-base new file mode 100755 index 0000000..f710ce7 --- /dev/null +++ b/src/.svn/text-base/bugs.txt.svn-base @@ -0,0 +1,3 @@ +Sprite timing is off; sprites will sometimes hold one frame forever, or animate extremely quickly. + +accessing Actor2D::cmdList causes segfault. But only for AIActor ... ? diff --git a/src/.svn/text-base/main.cpp.svn-base b/src/.svn/text-base/main.cpp.svn-base new file mode 100755 index 0000000..269cab6 --- /dev/null +++ b/src/.svn/text-base/main.cpp.svn-base @@ -0,0 +1,179 @@ +#include "MogCommon.h" + +SDL_Surface *screen; +Sprite2D sprites[50]; +Sprite2D **sprind; +char *gfxFiles[] = { + "gfx/Mog - Front.gif", + "gfx/Mog - Back.gif", + "gfx/Mog - Left.gif", + "gfx/Mog - Right.gif", + "gfx/Mog - Walk Front.gif", + "gfx/Mog - Walk Back.gif", + "gfx/Mog - Walk Left.gif", + "gfx/Mog - Walk Right.gif", + "gfx/Deceased - Down.gif", + "gfx/Deceased - Up.gif", + "gfx/Deceased - Left.gif", + "gfx/Deceased - Right.gif", + "gfx/Deceased - Walk Front.gif", + "gfx/Deceased - Walk Back.gif", + "gfx/Deceased - Walk Left.gif", + "gfx/Deceased - Walk Right.gif", + "gfx/Deceased - Attack Front.gif", + "gfx/Deceased - Attack Rear.gif", + "gfx/Deceased - Dead.gif" +}; + + + +int main(int argc, char **argv) +{ + bool running = true; + SDL_Event nextEvent; + int i = 0; + + if ( SDL_Init(SDL_INIT_EVERYTHING) < 0) { + cout << "Couldn't init SDL!!\n"; + cout << SDL_GetError(); + exit(-1); + } + screen = SDL_SetVideoMode(640, 480, 16, SDL_HWSURFACE | SDL_DOUBLEBUF); + if (!screen) { + cout << "Couldn't get screen!\n"; + cout << SDL_GetError(); + exit(-1); + } + SDL_WM_SetCaption("KUPO! : Mog's Adventure (debug proof pre-0.1a)", NULL); + + /* everything from here down is just a proof for now */ + + SDL_Rect s = {0, 0, 640, 480}; + + // do the stills + for (i = 0; i < 4 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 0, 32, 44); + } + // do the walkers + for (i = 4; i < 8 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 4, 32, 44); + } + + // do the stills + for (i = 8; i < 12 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 0, 68, 60); + } + // do the walkers + for (i = 12; i < 16 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 4, 68, 60); + } + + Sprite2D theBackground("gfx/samplebg.jpg", 0, 1, 640, 480); + + Actor2D theActor(&sprites[SPR_STILLDOWN], 0.0f); + theActor.move(90, 90); + theActor.setVelocity(4, 4); + theActor.setStateSprite(&sprites[SPR_MOVEDOWN], + SPR_MOVEDOWN); + theActor.setStateSprite(&sprites[SPR_MOVELEFT], + SPR_MOVELEFT); + theActor.setStateSprite(&sprites[SPR_MOVERIGHT], + SPR_MOVERIGHT); + theActor.setStateSprite(&sprites[SPR_MOVEUP], + SPR_MOVEUP); + theActor.setStateSprite(&sprites[SPR_STILLDOWN], + SPR_STILLDOWN); + theActor.setStateSprite(&sprites[SPR_STILLLEFT], + SPR_STILLLEFT); + theActor.setStateSprite(&sprites[SPR_STILLRIGHT], + SPR_STILLRIGHT); + theActor.command(ACTOR_SET_TYPE, ACTOR_TYPE_PLAYER, NULL); + + + AIActor theBaddie(&sprites[8+SPR_STILLDOWN], 0.0f, ACTOR_TYPE_PLAYER, 500); + theBaddie.move(50,50); + theBaddie.setStateSprite(&sprites[8+SPR_MOVEDOWN], + SPR_MOVEDOWN); + theBaddie.setStateSprite(&sprites[8+SPR_MOVELEFT], + SPR_MOVELEFT); + theBaddie.setStateSprite(&sprites[8+SPR_MOVERIGHT], + SPR_MOVERIGHT); + theBaddie.setStateSprite(&sprites[8+SPR_MOVEUP], + SPR_MOVEUP); + theBaddie.setStateSprite(&sprites[8+SPR_STILLDOWN], + SPR_STILLDOWN); + theBaddie.setStateSprite(&sprites[8+SPR_STILLLEFT], + SPR_STILLLEFT); + theBaddie.setStateSprite(&sprites[8+SPR_STILLRIGHT], + SPR_STILLRIGHT); + theBaddie.setVelocity(3, 3); + theBaddie.command(ACTOR_SET_TYPE, ACTOR_TYPE_BADDIE, NULL); + theBaddie.command(ACTOR_IDLE, 0, NULL); + + std::vector actorList; + actorList.clear(); + actorList.push_back(&theActor); + actorList.push_back(&theBaddie); + + while ( running == true ) { + theBackground.drawFrame(screen, 0, 0, 0, 0); + theActor.render(screen); + theActor.update(); + + theBaddie.render(screen); + theBaddie.updateAI(actorList); + theBaddie.update(); + + SDL_Flip(screen); + SDL_FillRect(screen, &s, 0); + SDL_PumpEvents(); + + if ( SDL_PollEvent(&nextEvent) > 0 ) { + switch (nextEvent.type) { + case SDL_KEYDOWN: + case SDL_KEYUP: + switch (nextEvent.key.state) { + case SDL_PRESSED: + if ( nextEvent.key.keysym.sym == SDLK_UP ) { + theActor.command(ACTOR_MOVEUP, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_DOWN) { + theActor.command(ACTOR_MOVEDOWN, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_RIGHT ) { + theActor.command(ACTOR_MOVERIGHT, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_LEFT) { + theActor.command(ACTOR_MOVELEFT, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_ESCAPE) { + running = false; + } + break; + case SDL_RELEASED: + if ( nextEvent.key.keysym.sym == SDLK_DOWN + && theActor.hasState(ACTOR_MOVEDOWN)) { + theActor.command(ACTOR_IDLE, ACTOR_MOVEDOWN, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_UP + && theActor.hasState(ACTOR_MOVEUP) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVEUP, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_LEFT + && theActor.hasState(ACTOR_MOVELEFT) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVELEFT, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_RIGHT + && theActor.hasState(ACTOR_MOVERIGHT) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVERIGHT, NULL); + } + break; + } + break; + case SDL_QUIT: + SDL_Quit(); + return 0; + } + } + } +} diff --git a/src/Actor.cpp b/src/Actor.cpp new file mode 100755 index 0000000..8b7ee53 --- /dev/null +++ b/src/Actor.cpp @@ -0,0 +1,496 @@ +/******************************************************************* +* +* DESCRIPTION: Code for actors and sprites +* +* AUTHOR: Andrew Kesterson andrew@aklabs.net +* +* HISTORY: $Log: Actor.cpp,v $ +* HISTORY: Revision 1.2 2006/01/01 19:10:00 andrew +* HISTORY: Added Robert's STLINI library and started work on the ConfigEngine. Moved some definitions around, and changed the order of includes to prevent broken declaration/definitions. +* HISTORY: +* +* DATE:12/31/2005 +* +*******************************************************************/ + +/** include files **/ + +#include "MogCommon.h" + +#warning This file still contains FIXMEs. + +/** local definitions **/ + +/* default settings */ + +/** external functions **/ + +/** external data **/ + +/** internal functions **/ + +// returns true if flag y in bitmask x +#define HASBIT(x, y) (x & y == y) +// toggles flag y in bitmask x +#define TOGGLEBIT(x, y) (x = x ^ y) +void moveBBox(BoundingBox *bbox, int x, int y); + +/** public data **/ + +/** private data **/ + +/** public functions **/ + +/** private functions **/ + + +void moveBBox(BoundingBox *bbox, int x, int y) +{ + if (bbox != NULL) { + bbox->sx += x; + bbox->sy += y; + } +} + +ActorCmd::ActorCmd() +{ + this->cmd = 0; + this->cmdFlags = 0; + this->target = 0; +} + +ActorCmd::ActorCmd(unsigned int c, unsigned int cf, void *t) +{ + this->cmd = c; + this->cmdFlags = cf; + this->target = t; +} + +Sprite2D::Sprite2D() +{ + this->bitmap = NULL; + this->fh = 0; + this->fw = 0; + this->numframes = 0; + this->frameticks = 0; +} + +Sprite2D::Sprite2D(char *gfxname, long ticks, int frames, int fw, int fh) +{ + this->init(gfxname,ticks ,frames ,fw ,fh); +} + +void Sprite2D::init(char *gfxname, long ticks, int frames, int fw, int fh) +{ + this->bitmap = IMG_Load(gfxname); + if ( this->bitmap == NULL ) { + cout << "failed to load bitmap : " << gfxname << ".\n"; + exit(1); + } + else { + this->fh = fh; + this->fw = fw; + this->numframes = frames; + this->frameticks = ticks; + } +} + +int Sprite2D::getfh() +{ + return this->fh; +} + +int Sprite2D::getfw() +{ + return this->fw; +} + +int Sprite2D::getframes() +{ + return this->numframes; +} + +int Sprite2D::getticks() +{ + return this->frameticks; +} + +void Sprite2D::drawFrame(SDL_Surface *canvas, int frame, int px, int py, int flip) +{ + int sx, sy; + + sx = 0 + (this->fw * frame); + sy = 0; + + if ( this->bitmap == NULL ) { + cout << "I was passed a NULL bitmap. EEK! (the cat)\n"; + } + + // check for out of bounds image copy + if ( sx > this->bitmap->w || sy > this->bitmap->h) { + // EEK! (the cat) + // re-call this with frame 0 and return + drawFrame(canvas, 0,px,py, flip); + return; + } + + if ( flip == 0) { + // don't flip + // (deprecated, I need to get rid of this) + SDL_Rect srcrect = {sx, sy, this->fw, this->fh}; + SDL_Rect dstrect = {px, py, this->fw, this->fh}; + SDL_BlitSurface(this->bitmap, &srcrect, canvas , &dstrect); + } + else if ( flip == 1 ) { + // mirror X + } + else if ( flip == 2 ) { + // flip Y + } + +} + +Sprite2D::~Sprite2D() +{ + if ( this->bitmap != NULL ) { + SDL_FreeSurface(this->bitmap); + } +} + +Actor2D::Actor2D() +{ + this->sprite = NULL; + this->init(NULL, 0); +} + +Actor2D::Actor2D(Sprite2D *spr, float speedOverride) +{ + this->init(spr,speedOverride ); +} + +// FIXME: change the speedOverride stuff to use the new array, instead of +// a constant override. +void Actor2D::init(Sprite2D *spr, float speedOverride) +{ + for ( int i = 0; i < NUMSTATES; i++ ) { + this->stateSprites[i] = NULL; + // NULL sprites in the stateSprites will make + // the sprite use its default sprite (spr) + } + if ( spr != NULL ) { + this->sprite = spr; + this->bbox.w = this->sprite->getfw(); + this->bbox.h = this->sprite->getfh(); + } + //this->animSpeedOverride = speedOverride; + this->animCurrFrame = 0; + this->animCurrTicks = 0; + this->bbox.sx = this->px = 0; + this->bbox.sy = this->py = 0; + this->lastTicks = 0; + this->vx = 0; + this->vy = 0; + this->state = 0; +} + +int Actor2D::getpx() +{ + return px; +} + +int Actor2D::getpy() +{ + return py; +} + +int Actor2D::getvx() +{ + return vx; +} + +int Actor2D::getvy() +{ + return vy; +} + +void Actor2D::move(int x, int y) +{ + px += x; + py += y; +} + +void Actor2D::moveAbs(int x, int y) +{ + px = x; + py = y; +} + +void Actor2D::setVelocity(int x, int y) +{ + vx = x; + vy = y; +} + +void Actor2D::update() +{ + //long newticks = SDL_GetTicks(); + long newticks = clock(); + long elapsed = newticks - this->lastTicks; + this->lastTicks = newticks; + + static long lastState = this->state; + lastState = this->state; + + this->procQueue(); + + if ( this->hasState(ACTOR_MOVELEFT) ) this->px -= this->vx; + if ( this->hasState(ACTOR_MOVERIGHT) ) this->px += this->vx; + if ( this->hasState(ACTOR_MOVEDOWN) ) this->py += this->vy; + if ( this->hasState(ACTOR_MOVEUP) ) this->py -= this->vy; + + + // FIXME: Sprite timing is semi-broken. + if ( elapsed >= sprite->getticks() && sprite->getframes() > 1 && sprite != NULL ) { + this->animCurrFrame++; + if ( this->animCurrFrame >= sprite->getframes() ) { + this->animCurrFrame = 0; + } + } + + moveBBox(&this->bbox, this->vx, this->vy); +} + +void Actor2D::render(SDL_Surface *canvas) +{ + this->sprite->drawFrame(canvas, this->animCurrFrame, + this->px, this->py, 0); +} + +long Actor2D::getState() +{ + return this->state; +} + +void Actor2D::setState(long state) +{ + this->state = state; +} + +void Actor2D::addState(long newstate) +{ + if (this->hasState(newstate)) return; + else this->state = this->state | newstate; +} + +void Actor2D::delState(long oldstate) +{ + if ( this->hasState(oldstate) ) { + this->state = this->state ^ oldstate; + } + else { + return; + } +} + +int Actor2D::hasState(long checkstate) +{ + if ( (this->state & checkstate) == checkstate) { + return true; + } + else { + return false; + } +} + +void Actor2D::setSprite(Sprite2D *spr) +{ + if ( this->sprite != spr && spr != NULL ) { + this->sprite = spr; + this->animCurrTicks = 0; + this->animCurrFrame = 0; + this->lastTicks = 0; + } +} + +void Actor2D::setStateSprite(Sprite2D *spr, long state) +{ + if ( spr != NULL ) { + this->stateSprites[state] = spr; + } +} + +void Actor2D::command(int cmd, int flags, void *target) +{ + this->cmdList.push(ActorCmd(cmd, flags, target)); +} + +void Actor2D::command(ActorCmd cmd) +{ + this->cmdList.push(cmd); +} + +void Actor2D::procQueue() +{ + ActorCmd cmd; + Sprite2D *n = NULL; + // process the actor's command queue + while ( !this->cmdList.empty() ) { + cmd = this->cmdList.front(); + switch ( cmd.cmd ) { + case ACTOR_MOVELEFT: + this->addState(ACTOR_MOVELEFT); + this->setSprite(this->stateSprites[ACTOR_MOVELEFT]); + break; + case ACTOR_MOVERIGHT: + this->addState(ACTOR_MOVERIGHT); + this->setSprite(this->stateSprites[ACTOR_MOVERIGHT]); + break; + case ACTOR_MOVEDOWN: + this->addState(ACTOR_MOVEDOWN); + this->setSprite(this->stateSprites[ACTOR_MOVEDOWN]); + break; + case ACTOR_MOVEUP: + this->addState(ACTOR_MOVEUP); + this->setSprite(this->stateSprites[ACTOR_MOVEUP]); + break; + case ACTOR_ATTACK: + this->addState(ACTOR_ATTACK); + this->setSprite(this->stateSprites[ACTOR_ATTACK]); + break; + case ACTOR_IDLE: + // stop all of the current states + if ( !cmd.cmdFlags ) { + this->setState(ACTOR_IDLE); + } + // (or) get rid of any states outlined in the cmdFlags + else this->delState(cmd.cmdFlags); + + if ( this->hasState(ACTOR_MOVELEFT) ) { + n = this->stateSprites[SPR_STILLLEFT]; + } + else if (this->hasState(ACTOR_MOVERIGHT) ) { + n = this->stateSprites[SPR_STILLRIGHT]; + } + else if (this->hasState(ACTOR_MOVEUP) ) { + n = this->stateSprites[SPR_STILLUP]; + } + else if ( this->hasState(ACTOR_MOVEDOWN) ) { + n = this->stateSprites[SPR_STILLDOWN]; + } + if ( n != NULL ) this->setSprite(n); + + break; + case ACTOR_SEEK: + this->addState(ACTOR_SEEK); + break; + case ACTOR_SET_TYPE: + this->addState(cmd.cmdFlags); + break; + default: + break; + } + this->cmdList.pop();; + } +} + +bool Actor2D::collidesWith(Actor2D *actor) +{ + if ( ((actor->bbox.sx > this->bbox.sx && + actor->bbox.sx < this->bbox.sx + this->bbox.w) && + (actor->bbox.sy > this->bbox.sy && + actor->bbox.sy < this->bbox.sy + this->bbox.h)) ) { + // ^^^ actor is inside of this + return false; + } + else if ((this->bbox.sx > actor->bbox.sx && + this->bbox.sx < actor->bbox.sx + actor->bbox.w) && + (this->bbox.sy > actor->bbox.sy && + this->bbox.sy < actor->bbox.sy + actor->bbox.h)){ + // ^^^ this is inside of actor + return false; + } + else return true; +} + +// FIXME: change the speedOverride stuff to use the new array, instead of +// a constant override. +AIActor::AIActor(Sprite2D *spr, float speedOverride, + unsigned int target, unsigned int maxrange) +{ + this->primTarget = target; + this->range = maxrange; + this->target = NULL; + this->sprite = NULL; + this->setSprite(spr); + //this->animSpeedOverride = speedOverride; +} + +// FIXME: ugly. +void AIActor::updateAI(std::vector actorList) +{ + // check the state and position of each actor within range of the AI + // to see if we need to react to them (ie, if they will change our state) + // this is the "default" AI that will wander in the given area until + // a creature of the appropriate type walks into the area, and then it will + // move to it to attack it + + Actor2D *actor = NULL; + unsigned int dist; + double dX = 0.00; + double dY = 0.00; + + if ( this->target == NULL || (this->target != NULL && this->target->hasState(ACTOR_DEAD))) { + for (unsigned int i = 0; i < actorList.size() ; i++ ) { + actor = actorList.at(i); + if ( actor->hasState(this->primTarget) ) { + this->target = actor; + break; + } + else continue; + } + } + + if ( this->target == NULL ) { + this->command(ACTOR_IDLE, 0, NULL); + return; + } + + // the distance is calculated as the hypotenuse of a triangle between the two sprites and + // an imaginary third converging point somewhere at a right angle. There's probly a faster way to + // do this. + + dX = this->px - this->target->getpx(); + dX *= dX; + dY = this->py - this->target->getpy(); + dY *= dY; + dist = (unsigned int) sqrt( dX + dY ); + + if ( dist < this->range || this->target == actor) { + if ( !this->collidesWith(this->target) ) { + this->command(ACTOR_IDLE, 0, NULL); + if ( this->target->getpx() > this->px ) { + this->command(ACTOR_MOVERIGHT, 0, NULL); + } + else if ( this->target->getpx() < this->px ) { + this->command(ACTOR_MOVELEFT, 0, NULL); + } + if ( this->target->getpy() > this->py ) { + this->command(ACTOR_MOVEDOWN, 0, NULL); + } + if ( this->target->getpy() < this->py ) { + this->command(ACTOR_MOVEUP, 0, NULL); + } + this->command(ACTOR_SEEK, 0, this->target); + // do a little cheating here.... (stop the "jitter" effect) + if ( dist < (unsigned int) this->vx ) { + this->px = target->getpx(); + } + if ( dist < (unsigned int) this->vy ) { + this->py = target->getpy(); + } + } + else { + this->command(ACTOR_ATTACK, 0, this->target); + } + } +} diff --git a/src/Actor.h b/src/Actor.h new file mode 100755 index 0000000..99b567f --- /dev/null +++ b/src/Actor.h @@ -0,0 +1,136 @@ +#ifndef _ACTOR_H_ +#define _ACTOR_H_ +// no, I will NOT use #pragma once. It's not standard. don't ask. + + +// sprite defines +#define SPRANIMS 12 // number of different animations per sprite +// stills +#define SPR_STILLDOWN 0 +#define SPR_STILLUP 1 +#define SPR_STILLLEFT 2 +#define SPR_STILLRIGHT 3 +// walkers +#define SPR_MOVEDOWN 4 +#define SPR_MOVEUP 5 +#define SPR_MOVELEFT 6 +#define SPR_MOVERIGHT 7 +// states +#define SPR_ATTACK 8 +#define SPR_DEAD 9 +#define SPR_USE 10 +#define SPR_TAKEDAMAGE 11 + + +// state defines +#define NUMSTATES 20 + +#define ACTOR_MOVELEFT 2 +#define ACTOR_MOVERIGHT 4 +#define ACTOR_MOVEUP 8 +#define ACTOR_MOVEDOWN 16 +#define ACTOR_IDLE 32 +#define ACTOR_ATTACK 64 +#define ACTOR_HIDE 128 +#define ACTOR_SEEK 256 +#define ACTOR_DEAD 512 +#define ACTOR_USE 1024 +// end the AI+Sprite states, start type states +#define ACTOR_TYPE_PLAYER 2048 +#define ACTOR_TYPE_BADDIE 4096 +#define ACTOR_TYPE_ITEM 8192 +#define ACTOR_TYPE_EFFECT 16384 +// these aren't really states, they're commands +#define ACTOR_TAKEDAMAGE 32768 +#define ACTOR_SET_TYPE 65536 + +typedef struct +{ + unsigned int sx, sy, w, h; +} BoundingBox; + +struct ActorCmd { + unsigned int cmd; + unsigned int cmdFlags; + void *target; + ActorCmd(); + ActorCmd(unsigned int c, unsigned int cf, void *target); +}; + +class Sprite2D +{ +protected: + SDL_Surface *bitmap; + unsigned int fw, fh; + unsigned long frameticks; + unsigned int numframes; +public: + Sprite2D(); + Sprite2D(char *gfxname, long ticks, int frames, int fw, int fh); + void init(char *gfxname, long ticks, int frames, int fw, int fh); + void drawFrame(SDL_Surface *canvas, int frame, int px, int py, int flip); + int getfw(); + int getfh(); + int getticks(); + int getframes(); + ~Sprite2D(); +}; + +class Actor2D +{ +protected: + int px, py; + int vx, vy; + int animCurrFrame; + int animCurrTicks; + unsigned long lastTicks; + float animSpeedOverride; + long state; + Sprite2D *sprite; // the default sprite + Sprite2D *stateSprites[NUMSTATES]; // the per-state sprites + std::queue cmdList; // FIFO command queue for the actor + + void setState(long state); + void addState(long state); + void delState(long state); + void procQueue(); +public: + BoundingBox bbox; + Actor2D(); + Actor2D(Sprite2D *spr, float speedOverride); + void init(Sprite2D *spr, float speedOverride); + int getpx(); + int getpy(); + int getvx(); + int getvy(); + // state manipulation + long getState(); + int hasState(long state); + // position and velocity manipulation + void move(int x, int y); + void moveAbs(int x, int y); + void setVelocity(int x, int y); + void update(); + bool collidesWith(Actor2D *actor); + // rendering and sprite manipulation + void setSprite(Sprite2D *spr); + void render(SDL_Surface *canvas); + void setStateSprite(Sprite2D *spr, long state); + // other stuff + void command(int cmd, int flags, void *target); + void command(ActorCmd cmd); +}; + +class AIActor : public Actor2D +{ +protected: + unsigned int primTarget; // type of actor it targets + unsigned int range; // the range it will pursue the target at + Actor2D *target; // the target it's currently moving to +public: + AIActor(Sprite2D *spr, float speedOverride, + unsigned int target, unsigned int maxrange); + void updateAI(std::vector actorList); +}; + +#endif // _ACTOR_H_ diff --git a/src/CVS/.svn/all-wcprops b/src/CVS/.svn/all-wcprops new file mode 100755 index 0000000..40e989f --- /dev/null +++ b/src/CVS/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/CVS +END +Repository +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/CVS/Repository +END +Root +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/CVS/Root +END +Entries +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/CVS/Entries +END diff --git a/src/CVS/.svn/entries b/src/CVS/.svn/entries new file mode 100755 index 0000000..17b6f7a --- /dev/null +++ b/src/CVS/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/src/CVS +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Repository +file + + + + +2010-02-05T03:37:53.073248Z +bd8570ec02ca79e90b9e69ee4ae41d36 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Root +file + + + + +2010-02-05T03:37:53.073248Z +7af14a164593104c1e7a07a572dd352a +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Entries +file + + + + +2010-02-05T03:37:53.073248Z +bec34991a8f1e32c337b7b0319f40f64 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +286 + diff --git a/src/CVS/.svn/text-base/Entries.svn-base b/src/CVS/.svn/text-base/Entries.svn-base new file mode 100755 index 0000000..3a0c97b --- /dev/null +++ b/src/CVS/.svn/text-base/Entries.svn-base @@ -0,0 +1,7 @@ +/Actor.cpp/1.2/Sun Jan 1 19:10:00 2006// +/Actor.h/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Makefile/1.1.1.1/Sat Dec 31 23:55:08 2005// +/MogCommon.h/1.1.1.1/Sat Dec 31 23:55:08 2005// +/bugs.txt/1.1.1.1/Sat Dec 31 23:55:08 2005// +/main.cpp/1.1.1.1/Sat Dec 31 23:55:08 2005// +D/exampleINI//// diff --git a/src/CVS/.svn/text-base/Repository.svn-base b/src/CVS/.svn/text-base/Repository.svn-base new file mode 100755 index 0000000..094a4b1 --- /dev/null +++ b/src/CVS/.svn/text-base/Repository.svn-base @@ -0,0 +1 @@ +games/MogsAdventure/src diff --git a/src/CVS/.svn/text-base/Root.svn-base b/src/CVS/.svn/text-base/Root.svn-base new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/src/CVS/.svn/text-base/Root.svn-base @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/src/CVS/Entries b/src/CVS/Entries new file mode 100755 index 0000000..3a0c97b --- /dev/null +++ b/src/CVS/Entries @@ -0,0 +1,7 @@ +/Actor.cpp/1.2/Sun Jan 1 19:10:00 2006// +/Actor.h/1.1.1.1/Sat Dec 31 23:55:08 2005// +/Makefile/1.1.1.1/Sat Dec 31 23:55:08 2005// +/MogCommon.h/1.1.1.1/Sat Dec 31 23:55:08 2005// +/bugs.txt/1.1.1.1/Sat Dec 31 23:55:08 2005// +/main.cpp/1.1.1.1/Sat Dec 31 23:55:08 2005// +D/exampleINI//// diff --git a/src/CVS/Repository b/src/CVS/Repository new file mode 100755 index 0000000..094a4b1 --- /dev/null +++ b/src/CVS/Repository @@ -0,0 +1 @@ +games/MogsAdventure/src diff --git a/src/CVS/Root b/src/CVS/Root new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/src/CVS/Root @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/src/Makefile b/src/Makefile new file mode 100755 index 0000000..8657322 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,92 @@ +# Visual SlickEdit generated file. Do not edit this file except in designated areas. +# -----Begin user-editable area----- + +# -----End user-editable area----- + +# Make command to use for dependencies +MAKECMD=gmake + +# If no configuration is specified, "Debug" will be used +ifndef "CFG" +CFG=Debug +endif + +# +# Configuration: Debug +# +ifeq "$(CFG)" "Debug" +OUTDIR=Debug +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/main.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) + +COMPILE=g++ -c -DLINUX -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O0 -g3 -ggdb -p -pg -Wall -o "$(OUTFILE)" $(OBJ) $(CFG_LIB) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif + +# +# Configuration: Release +# +ifeq "$(CFG)" "Release" +OUTDIR=Release +OUTFILE=$(OUTDIR)/Mogs-Adventure +CFG_INC= +CFG_LIB=-lSDL_mixer -lSDL_sound -lSDL_flic -lSDL_net -lSDL_image +CFG_OBJ= +COMMON_OBJ=$(OUTDIR)/Actor.o $(OUTDIR)/main.o +OBJ=$(COMMON_OBJ) $(CFG_OBJ) + +COMPILE=g++ -c -DLINUX -O2 -o "$(OUTDIR)/$(*F).o" $(CFG_INC) "$<" `sdl-config --cflags` +LINK=g++ -O2 -o "$(OUTFILE)" $(OBJ) $(CFG_LIB) `sdl-config --libs` + +# Pattern rules +$(OUTDIR)/%.o : src/%.cpp + $(COMPILE) + +# Build rules +all: $(OUTFILE) + +$(OUTFILE): $(OUTDIR) $(OBJ) + $(LINK) + +$(OUTDIR): + mkdir -p "$(OUTDIR)" + +# Rebuild this project +rebuild: cleanall all + +# Clean this project +clean: + rm -f $(OUTFILE) + rm -f $(OBJ) + +# Clean this project and all dependencies +cleanall: clean +endif diff --git a/src/MogCommon.h b/src/MogCommon.h new file mode 100755 index 0000000..aeb52a5 --- /dev/null +++ b/src/MogCommon.h @@ -0,0 +1,21 @@ +#ifndef _MOGCOMMON_H_ +#define _MOGCOMMON_H_ + +#include +#include +// won't need these until later ..... +//#include +//#include +//#include +//#include + +#include +#include +#include +#include + +#include "Actor.h" + +using std::cout; + +#endif // _MOGCOMMON_H_ diff --git a/src/bugs.txt b/src/bugs.txt new file mode 100755 index 0000000..f710ce7 --- /dev/null +++ b/src/bugs.txt @@ -0,0 +1,3 @@ +Sprite timing is off; sprites will sometimes hold one frame forever, or animate extremely quickly. + +accessing Actor2D::cmdList causes segfault. But only for AIActor ... ? diff --git a/src/exampleINI/.svn/all-wcprops b/src/exampleINI/.svn/all-wcprops new file mode 100755 index 0000000..8658965 --- /dev/null +++ b/src/exampleINI/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 57 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/exampleINI +END diff --git a/src/exampleINI/.svn/entries b/src/exampleINI/.svn/entries new file mode 100755 index 0000000..ba6834d --- /dev/null +++ b/src/exampleINI/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/src/exampleINI +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +CVS +dir + diff --git a/src/exampleINI/CVS/.svn/all-wcprops b/src/exampleINI/CVS/.svn/all-wcprops new file mode 100755 index 0000000..fe12b97 --- /dev/null +++ b/src/exampleINI/CVS/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/exampleINI/CVS +END +Repository +K 25 +svn:wc:ra_dav:version-url +V 72 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/exampleINI/CVS/Repository +END +Root +K 25 +svn:wc:ra_dav:version-url +V 66 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/exampleINI/CVS/Root +END +Entries +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/aklabs/!svn/ver/4/trunk/MogsAdventure/src/exampleINI/CVS/Entries +END diff --git a/src/exampleINI/CVS/.svn/entries b/src/exampleINI/CVS/.svn/entries new file mode 100755 index 0000000..e194a2b --- /dev/null +++ b/src/exampleINI/CVS/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +44 +https://127.0.0.1/svn/aklabs/trunk/MogsAdventure/src/exampleINI/CVS +https://127.0.0.1/svn/aklabs + + + +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + +eb184899-6090-47d4-a65b-558f62f6ea1c + +Repository +file + + + + +2010-02-05T03:37:53.323248Z +3e285ef3fe728804ac79b647c491685d +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +35 + +Root +file + + + + +2010-02-05T03:37:53.323248Z +7af14a164593104c1e7a07a572dd352a +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +24 + +Entries +file + + + + +2010-02-05T03:37:53.323248Z +57b8d745384127342f95660d97e1c9c2 +2007-05-26T21:27:56.375027Z +4 +andrew + + + + + + + + + + + + + + + + + + + + + +2 + diff --git a/src/exampleINI/CVS/.svn/text-base/Entries.svn-base b/src/exampleINI/CVS/.svn/text-base/Entries.svn-base new file mode 100755 index 0000000..1784810 --- /dev/null +++ b/src/exampleINI/CVS/.svn/text-base/Entries.svn-base @@ -0,0 +1 @@ +D diff --git a/src/exampleINI/CVS/.svn/text-base/Repository.svn-base b/src/exampleINI/CVS/.svn/text-base/Repository.svn-base new file mode 100755 index 0000000..91e3c11 --- /dev/null +++ b/src/exampleINI/CVS/.svn/text-base/Repository.svn-base @@ -0,0 +1 @@ +games/MogsAdventure/src/exampleINI diff --git a/src/exampleINI/CVS/.svn/text-base/Root.svn-base b/src/exampleINI/CVS/.svn/text-base/Root.svn-base new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/src/exampleINI/CVS/.svn/text-base/Root.svn-base @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/src/exampleINI/CVS/Entries b/src/exampleINI/CVS/Entries new file mode 100755 index 0000000..1784810 --- /dev/null +++ b/src/exampleINI/CVS/Entries @@ -0,0 +1 @@ +D diff --git a/src/exampleINI/CVS/Repository b/src/exampleINI/CVS/Repository new file mode 100755 index 0000000..91e3c11 --- /dev/null +++ b/src/exampleINI/CVS/Repository @@ -0,0 +1 @@ +games/MogsAdventure/src/exampleINI diff --git a/src/exampleINI/CVS/Root b/src/exampleINI/CVS/Root new file mode 100755 index 0000000..180ad4a --- /dev/null +++ b/src/exampleINI/CVS/Root @@ -0,0 +1 @@ +andrew@gabbo:/home/cvsd diff --git a/src/main.cpp b/src/main.cpp new file mode 100755 index 0000000..269cab6 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,179 @@ +#include "MogCommon.h" + +SDL_Surface *screen; +Sprite2D sprites[50]; +Sprite2D **sprind; +char *gfxFiles[] = { + "gfx/Mog - Front.gif", + "gfx/Mog - Back.gif", + "gfx/Mog - Left.gif", + "gfx/Mog - Right.gif", + "gfx/Mog - Walk Front.gif", + "gfx/Mog - Walk Back.gif", + "gfx/Mog - Walk Left.gif", + "gfx/Mog - Walk Right.gif", + "gfx/Deceased - Down.gif", + "gfx/Deceased - Up.gif", + "gfx/Deceased - Left.gif", + "gfx/Deceased - Right.gif", + "gfx/Deceased - Walk Front.gif", + "gfx/Deceased - Walk Back.gif", + "gfx/Deceased - Walk Left.gif", + "gfx/Deceased - Walk Right.gif", + "gfx/Deceased - Attack Front.gif", + "gfx/Deceased - Attack Rear.gif", + "gfx/Deceased - Dead.gif" +}; + + + +int main(int argc, char **argv) +{ + bool running = true; + SDL_Event nextEvent; + int i = 0; + + if ( SDL_Init(SDL_INIT_EVERYTHING) < 0) { + cout << "Couldn't init SDL!!\n"; + cout << SDL_GetError(); + exit(-1); + } + screen = SDL_SetVideoMode(640, 480, 16, SDL_HWSURFACE | SDL_DOUBLEBUF); + if (!screen) { + cout << "Couldn't get screen!\n"; + cout << SDL_GetError(); + exit(-1); + } + SDL_WM_SetCaption("KUPO! : Mog's Adventure (debug proof pre-0.1a)", NULL); + + /* everything from here down is just a proof for now */ + + SDL_Rect s = {0, 0, 640, 480}; + + // do the stills + for (i = 0; i < 4 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 0, 32, 44); + } + // do the walkers + for (i = 4; i < 8 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 4, 32, 44); + } + + // do the stills + for (i = 8; i < 12 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 0, 68, 60); + } + // do the walkers + for (i = 12; i < 16 ; i++ ) { + sprites[i].init(gfxFiles[i], 45, 4, 68, 60); + } + + Sprite2D theBackground("gfx/samplebg.jpg", 0, 1, 640, 480); + + Actor2D theActor(&sprites[SPR_STILLDOWN], 0.0f); + theActor.move(90, 90); + theActor.setVelocity(4, 4); + theActor.setStateSprite(&sprites[SPR_MOVEDOWN], + SPR_MOVEDOWN); + theActor.setStateSprite(&sprites[SPR_MOVELEFT], + SPR_MOVELEFT); + theActor.setStateSprite(&sprites[SPR_MOVERIGHT], + SPR_MOVERIGHT); + theActor.setStateSprite(&sprites[SPR_MOVEUP], + SPR_MOVEUP); + theActor.setStateSprite(&sprites[SPR_STILLDOWN], + SPR_STILLDOWN); + theActor.setStateSprite(&sprites[SPR_STILLLEFT], + SPR_STILLLEFT); + theActor.setStateSprite(&sprites[SPR_STILLRIGHT], + SPR_STILLRIGHT); + theActor.command(ACTOR_SET_TYPE, ACTOR_TYPE_PLAYER, NULL); + + + AIActor theBaddie(&sprites[8+SPR_STILLDOWN], 0.0f, ACTOR_TYPE_PLAYER, 500); + theBaddie.move(50,50); + theBaddie.setStateSprite(&sprites[8+SPR_MOVEDOWN], + SPR_MOVEDOWN); + theBaddie.setStateSprite(&sprites[8+SPR_MOVELEFT], + SPR_MOVELEFT); + theBaddie.setStateSprite(&sprites[8+SPR_MOVERIGHT], + SPR_MOVERIGHT); + theBaddie.setStateSprite(&sprites[8+SPR_MOVEUP], + SPR_MOVEUP); + theBaddie.setStateSprite(&sprites[8+SPR_STILLDOWN], + SPR_STILLDOWN); + theBaddie.setStateSprite(&sprites[8+SPR_STILLLEFT], + SPR_STILLLEFT); + theBaddie.setStateSprite(&sprites[8+SPR_STILLRIGHT], + SPR_STILLRIGHT); + theBaddie.setVelocity(3, 3); + theBaddie.command(ACTOR_SET_TYPE, ACTOR_TYPE_BADDIE, NULL); + theBaddie.command(ACTOR_IDLE, 0, NULL); + + std::vector actorList; + actorList.clear(); + actorList.push_back(&theActor); + actorList.push_back(&theBaddie); + + while ( running == true ) { + theBackground.drawFrame(screen, 0, 0, 0, 0); + theActor.render(screen); + theActor.update(); + + theBaddie.render(screen); + theBaddie.updateAI(actorList); + theBaddie.update(); + + SDL_Flip(screen); + SDL_FillRect(screen, &s, 0); + SDL_PumpEvents(); + + if ( SDL_PollEvent(&nextEvent) > 0 ) { + switch (nextEvent.type) { + case SDL_KEYDOWN: + case SDL_KEYUP: + switch (nextEvent.key.state) { + case SDL_PRESSED: + if ( nextEvent.key.keysym.sym == SDLK_UP ) { + theActor.command(ACTOR_MOVEUP, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_DOWN) { + theActor.command(ACTOR_MOVEDOWN, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_RIGHT ) { + theActor.command(ACTOR_MOVERIGHT, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_LEFT) { + theActor.command(ACTOR_MOVELEFT, 0, NULL); + } + else if ( nextEvent.key.keysym.sym == SDLK_ESCAPE) { + running = false; + } + break; + case SDL_RELEASED: + if ( nextEvent.key.keysym.sym == SDLK_DOWN + && theActor.hasState(ACTOR_MOVEDOWN)) { + theActor.command(ACTOR_IDLE, ACTOR_MOVEDOWN, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_UP + && theActor.hasState(ACTOR_MOVEUP) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVEUP, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_LEFT + && theActor.hasState(ACTOR_MOVELEFT) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVELEFT, NULL); + } + if ( nextEvent.key.keysym.sym == SDLK_RIGHT + && theActor.hasState(ACTOR_MOVERIGHT) ) { + theActor.command(ACTOR_IDLE, ACTOR_MOVERIGHT, NULL); + } + break; + } + break; + case SDL_QUIT: + SDL_Quit(); + return 0; + } + } + } +}