Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
C/C++ Open Source Bot
#16
Du bist herzlich Willkommen, richthofen Smile


Ich glaube, ich veröffentliche nicht den gesamten Quellcode, sondern gebe ihn nur an Entwickler

Um euch einen Vorgeschmack zu geben, poste ich hier die Ausbau Funktion, mit der ich überhaupt nicht zufrieden bin.

Hier können wir ja schonmal anfangen gemeinsam daran zu arbeiten.

btwBig Grinie Kommentare habe ich gerade lieblos hinzugefügt, also nicht wundern. Die Formatierung ging auch verloren Sad

PHP Code:
/* Vorinfos: Klasse TBot gegeben. Die vcl von Codegear wird verwendet. IdHTTP1 basiert auf den Indy Bibliotheken. GET Methode (ziemlich billig): AnsiString TIdHTTP::Get(AnsiString url); <- verarbeitet Umleitungen u. Cookies automatisch */ int TBot::Build(void) { int cnt=0; AnsiString recv_buf=IdHTTP1->Get(server+"/game.php?village="+vlgnr+"&screen=main"); //recv_buf -> HTML-Output des Hauptgebäudes \n vlgnr -> ID des aktuellen Dorfes if(FarmFull(recv_buf)) { if(!CanBuild(recv_buf,"farm")&&Points()<9250) {}//Form1->RichEdit1->Lines->Add(name+":\t Bauernhofkapazität erschöpft"); // Funktionen, die überprüfen, ob der Bauernhof voll ist, und/oder weiter ausgebaut werden kann } // AnsiContainsStr gibt aus, ob der Teilstring im String vorhanden ist while(AnsiContainsStr(recv_buf,"action=build")&&( //Das hier ist blöd AnsiContainsStr(recv_buf,"id=main") || AnsiContainsStr(recv_buf,"id=barracks") || AnsiContainsStr(recv_buf,"id=stable") || AnsiContainsStr(recv_buf,"id=smith") || AnsiContainsStr(recv_buf,"id=wood") || AnsiContainsStr(recv_buf,"id=stone") || AnsiContainsStr(recv_buf,"id=iron") || AnsiContainsStr(recv_buf,"id=farm") || AnsiContainsStr(recv_buf,"id=market") || AnsiContainsStr(recv_buf,"id=storage") || AnsiContainsStr(recv_buf,"id=wall") )) { TStringList *html=new TStringList(); //String Liste, der split(html,recv_buf,"\n"); // ... alle Zeilen des HTML-Outputs zugewiesen werden for(int i=0;i<html->Count;i++) { if(AnsiContainsStr(html->Strings[i],"action=build")&&( // auch Scheiße AnsiContainsStr(html->Strings[i],"id=main") || AnsiContainsStr(html->Strings[i],"id=barracks") || AnsiContainsStr(html->Strings[i],"id=stable") || AnsiContainsStr(html->Strings[i],"id=smith") || AnsiContainsStr(html->Strings[i],"id=wood") || AnsiContainsStr(html->Strings[i],"id=stone") || AnsiContainsStr(html->Strings[i],"id=iron") || AnsiContainsStr(html->Strings[i],"id=farm") || AnsiContainsStr(html->Strings[i],"id=market") || AnsiContainsStr(html->Strings[i],"id=storage") || AnsiContainsStr(html->Strings[i],"id=wall") )) { AnsiString build=BtWn(html->Strings[i],"href=\"","\">"); //BtWn(String str,String one,String two) gibt den String zwischen one und two von str aus if(AnsiContainsStr(html->Strings[i],"javascript")) build=BtWn(html->Strings[i],", '","')"); recv_buf=IdHTTP1->Get(server+"/"+build); cnt++; } } delete html; //saubermachen } return cnt; //anzahl der ausgebauten gebäude zurückgeben } bool TBot::FarmFull(String recv_buf) { AnsiString is=BtWn(recv_buf,"<td align=\"center\">","/"), limit=BtWn(recv_buf,"<td align=\"center\">","/td>"); limit=BtWn(limit,"/","<"); return (StrToInt(limit)==StrToInt(is)?true:false); } bool TBot::CanBuild(String mainb,String id) { TStringList *html=new TStringList(); split(html,mainb,"\n");bool can=false; for(int i=0;i<html->Count;i++) { if(AnsiContainsStr(html->Strings[i],"action=build") &&AnsiContainsStr(html->Strings[i],"&id="+id)) can=true; } delete html; return can; }
Kein Support per PM!
Reply


Messages In This Thread
C/C++ Open Source Bot - by iNk - 04.04.2009, 21:42
RE: C/C++ Open Source Bot - by Agamendon - 04.04.2009, 21:47
RE: C/C++ Open Source Bot - by iNk - 04.04.2009, 21:53
RE: C/C++ Open Source Bot - by Agamendon - 04.04.2009, 21:55
RE: C/C++ Open Source Bot - by Devil94 - 04.04.2009, 22:40
RE: C/C++ Open Source Bot - by -superking- - 05.04.2009, 08:42
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 09:14
RE: C/C++ Open Source Bot - by -superking- - 05.04.2009, 10:13
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 10:22
RE: C/C++ Open Source Bot - by -superking- - 05.04.2009, 10:53
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 11:02
RE: C/C++ Open Source Bot - by agrafix - 05.04.2009, 11:33
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 11:48
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 11:54
RE: C/C++ Open Source Bot - by Agamendon - 05.04.2009, 13:10
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 13:28
RE: C/C++ Open Source Bot - by Agamendon - 05.04.2009, 14:06
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 14:09
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 14:39
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 14:42
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 14:45
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 14:51
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 14:59
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 16:17
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 16:25
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 16:30
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 16:40
RE: C/C++ Open Source Bot - by Agamendon - 05.04.2009, 16:46
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 16:54
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 17:19
RE: C/C++ Open Source Bot - by iNk - 05.04.2009, 17:21
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 17:29
RE: C/C++ Open Source Bot - by Agamendon - 05.04.2009, 18:41
RE: C/C++ Open Source Bot - by richthofen - 05.04.2009, 18:46
RE: C/C++ Open Source Bot - by agrafix - 06.04.2009, 14:11
RE: C/C++ Open Source Bot - by iNk - 06.04.2009, 14:36
RE: C/C++ Open Source Bot - by richthofen - 06.04.2009, 15:01
RE: C/C++ Open Source Bot - by Milu2K - 06.04.2009, 17:38
RE: C/C++ Open Source Bot - by shirocco - 05.06.2009, 21:06
RE: C/C++ Open Source Bot - by iNk - 05.06.2009, 21:11
RE: C/C++ Open Source Bot - by shirocco - 05.06.2009, 21:17



Users browsing this thread: 2 Guest(s)