00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "Clear.h"
00021 #include "Player.h"
00022 #include "Area.h"
00023 #include "Chunk.h"
00024 #include "InSocket.h"
00025
00026
00027 void Clear::Execute(InSocket *from,const std::string& params,Parse&)
00028 {
00029 Database& db = from -> GetDatabase();
00030 Player pl(db, from -> GetAccountName());
00031 Area area(db, pl.GetArea());
00032 Chunk chunk(db, area, pl.GetChunk());
00033
00034 char fromchar = chunk.Get(pl.GetChunkX(),pl.GetChunkY());
00035 if (' ' != fromchar)
00036 {
00037 chunk.Fill(pl.GetChunkX(),pl.GetChunkY(),fromchar,' ');
00038 chunk.Save();
00039 from -> Send("Ok.\n");
00040 }
00041 else
00042 {
00043 from -> Send("Can't fill with same terrain.\n");
00044 }
00045 from -> SetPrompt();
00046 }
00047
00048