- TibiaAuto [TA] Stanie na ukos od potwora-pro?ba

Status
Zamknięty.

Mixal0

User
Zarejestrowany
Dołączył
Wrzesień 8, 2008
Posty
30
Liczba reakcji
0
Witam mam do was pro?b? m?g?by mi kto? zrobi? SKRYPTA(nie konfiguracje.xml)
do tibia auto ?eby sta? na ukos od potwora jest takie co? na forum tibia auto
Punkt 10 link do stan? na ukos
?ci?gn??bym to sam ale nie chc? mi przys?a? potwierdzenia na e-mail wiec was o to prosz?

Link bepo?redni
 
Odp: [TA] Stanie na ukos od potwora-pro?ba

Sprawd? ten skrypt, my?l? ?e zadzia?a..

PHP:
class ModuleStandDiagonal:# MUST HAVE MAP RESEARCHED!!!!
    DiagOn = 1;
    itemId=0;
    itemX=0;
    itemY=0;
    itemPos=0;
    killTime=0;

    def getName(self):
        return "Stand Diagonal"

    def getVersion(self):
        return "1.00"

    def getFunDef(self,nr):
        if (nr==0): return (2,0,self.toggle);
        if (nr==1): return (0,300,self.diag);
        return ();

    def getConfigParam(self,nr):
        return ();

    def toggle(self,params,mess):
        selfCh = tareader.readSelfCharacter();
        if mess == "%ta diag":
            self.DiagOn = not(self.DiagOn);
            tasender.sendTAMessage('Stand Diagonal is '+ str(self.DiagOn));
        return();

    def facing(self,direction):
        return [-abs(direction%4-1)+1,-abs(direction%4-2)+1];

    def diag(self,params):
        if self.DiagOn:
            monsterID = tareader.getAttackedCreature();
            selfCh = tareader.readSelfCharacter();
            blockedPoints=[];
            for i in range(4):
                face = self.facing(i)
                for j in range(tareader.mapGetPointItemsCount(face[0],face[1],0)):
                    if tareader.mapGetPointItemId (face[0],face[1],0,j) == 99:
                        if monsterID == 0: monsterID = tareader.mapGetPointItemExtraInfo(face[0],face[1],0,j,1);
                        blockedPoints+=[(selfCh['x']+face[0],selfCh['y']+face[1],selfCh['z'])];
            if monsterID!=0 and monsterID > 0x40000000:
                if time.time()-self.killTime<2: return;
                monster = tareader.getCharacterByTibiaId(monsterID);
                face = self.facing(monster['lookDirection'])
                monToMe = [(selfCh['x']-monster['x']),(selfCh['y']-monster['y'])]
               
                if (face[0]*monToMe[0] + face[1]*monToMe[1]) >=0 and abs(monster['x'] - selfCh['x'])+abs(monster['y'] - selfCh['y'])==1:
                    possiblePoints=[];
                    for x in range(-1,2,2):
                        for y in range(-1,2,2):
                            pt=(selfCh['x']+x*(monster['y'] - selfCh['y']),selfCh['y']+y*(monster['x'] - selfCh['x']),selfCh['z']);
                            if possiblePoints.count(pt)==0 and blockedPoints.count(pt)==0 and tamap.isPointAvailableNoProh(pt[0],pt[1],pt[2]) and not tamap.getPointUpDownNoProh(pt[0],pt[1],pt[2]):
                                possiblePoints+=[pt];
                    if len(possiblePoints)==0: return;
                    ind=random.randint(0,len(possiblePoints)-1);
                    tasender.walkOnTAMap(possiblePoints[ind][0],possiblePoints[ind][1],possiblePoints[ind][2]);
            else: self.killTime=time.time();
        return;
tibiaauto.registerPlugin(ModuleStandDiagonal);
 
Status
Zamknięty.
Back
Do góry