Есть одна игры. Я пытаюсь сделать к ней бот.
После подключения к основному серверу (далее main) клиент отсылает некоторые данные, после чего получает ip и порт другого сервера (далее bulle), протокол у них одинаковый. Нужно создать второй клиент для bulle-сервера и поместить кое-какие данные от bulle в Factory, чтобы их можно было использовать в обоих клиентах.
Не очень хорошо знаю английский, пытался гуглить – ничего не нашел.
#coding: utf-8
from bytearray import ByteArray
from fingerprint import fingerprint
from Protocole import *
from twisted.internet import reactor, protocol
def _(text):
print "[DEBUG] " + text
class TransformiceBotFactory(protocol.ClientFactory):
def __init__(self):
self.oop = 0
def clientConnectionFailed(self, connector, reason):
_("Connection failed!")
#reactor.stop()
def clientConnectionLost(self, connector, reason):
_("Connection lost!")
#reactor.stop()
#main()
class TransformiceBotMainServeurClient(TFMClientProtocol):
def connectionMade(self):
_("Connected to main server.")
self.factory.oop += 1
print self.factory.oop
self.sendInitialPacket()
def connectionLost(self, reason):
_("connection lost")
def sendInitialPacket(self):
bulleClient = TransformiceBotFactory()
bulleClient.protocol = TransformiceBotBulleServeurClient
reactor.connectTCP("bulleip", 44440, bulleClient)
class TransformiceBotBulleServeurClient(TFMClientProtocol):
def connectionMade(self):
_("Connected to bulle server.")
_(str(self.factory.oop))
self.sendInitialPacket()
def connectionLost(self, reason):
_("connection lost")
def sendInitialPacket(self):return
def main():
_("Transformice bot is reloaded!")
#from twisted.python import log
#import sys
#log.startLogging(sys.stdout)
mainClient = TransformiceBotFactory()
mainClient.protocol = TransformiceBotMainServeurClient
reactor.connectTCP("mainip", 44440, mainClient)
reactor.run()
if __name__ == "__main__":
# running not as imported module
main()