OBJS = object.o \
	world.o \
	mushroom.o \
	creature.o \
	spell.o \
	spelldef.o \
	selectable.o \
	commandcenter.o \
	ant.o \
	map.o \
	attack.o \
	object_map.o \
	moving.o \
	record.o \
	wind.o \
	antheap.o \
	settings.o \
	trap.o
MUSHROOM_OBJS = $(OBJS) \
	animation.o \
	animationloader.o \
	gui.o \
	mainmenu.o \
	main.o \
	game.o \
	particle.o \
	musicplayer.o \
	sbox.o \
	sbutton.o \
	dir.o \
	spellhotkey.o \
	spell_emitter.o \
	soundplayer.o \
	config.o \
	settingsmenu.o \
	keynames.o \
	volumewidget.o \
	butterfly.o \
	laser.o \
	popup.o
REPLAY_OBJS = $(OBJS) \
	replay.o \
	replaymain.o \
	SFML/Packet.o

MUSHROOM_SRC_OBJS = $(addprefix src/, $(MUSHROOM_OBJS))
REPLAY_SRC_OBJS = $(addprefix src/replay/, $(REPLAY_OBJS))

LDFLAGS = -lsfml-graphics -lsfml-window -lsfml-system -lsfml-audio -lsfml-network

CXXFLAGS = -O2 -pedantic -Wall -Isrc
CXX = g++ 

all: mushroom

builddir = src/replay

$(builddir)/%.o : src/%.cpp
	$(CXX) $(CXXFLAGS) -c $< -o $@

$(MUSHROOM_SRC_OBJS): %.o: %.cpp
$(REPLAY_SRC_OBJS): src/replay/%.o: src/%.cpp

mushroom: $(MUSHROOM_SRC_OBJS) 
	$(CXX) $(MUSHROOM_SRC_OBJS) $(CXXFLAGS) $(LDFLAGS) -o mushroom
replay: CXXFLAGS += -DNO_GRAPHICS
replay: LDFLAGS =
replay: $(REPLAY_SRC_OBJS) 
	$(CXX) $(REPLAY_SRC_OBJS) $(CXXFLAGS) $(LDFLAGS) -o replay
clean:
	rm -f $(MUSHROOM_SRC_OBJS) $(REPLAY_SRC_OBJS)

