Advertisement
Guest User

Surge.py Smogon Thread 21/5

a guest
May 21st, 2015
310
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.96 KB | None | 0 0
  1. import datasets,pokedexjs,datacalc
  2.  
  3. dicopoke=pokedexjs.pokemons
  4.  
  5. def lowerandkill(string,toberemoved=[' ']):
  6.     localstr=''
  7.     for i in string.lower():
  8.         if not i in toberemoved:
  9.             localstr+=i
  10.     return localstr
  11.    
  12. for i in dicopoke:
  13.     dicopoke[i]['sets']=[]
  14.  
  15. strsets=datasets.Sets
  16.  
  17. listesets=[]
  18. strsetsparsed=strsets.split('\n')
  19. for i in strsetsparsed:
  20.     if i=='':
  21.         listesets.append([])
  22.     else:
  23.         listesets[-1].append(i)
  24.  
  25. for loop_listesets in listesets:
  26.     d=loop_listesets[0][:loop_listesets[0].index('@')-1].lower()
  27.     dicopoke[lowerandkill(d,['-'])]['sets'].append(loop_listesets)
  28.    
  29. #for i in listesets:
  30. #    try:
  31. #        d=i[0][:i[0].index('@')-1].lower()
  32. #        e=''
  33. #        for j in d:
  34. #            if j!='-':
  35. #                e+=j
  36. #        dicopoke[e]['sets'].append(i)
  37. #    except:
  38. #        print i
  39.        
  40. for i in dicopoke:
  41.     dicopoke[i]['pysets']=[]
  42.    
  43. for loop_dicopoke in dicopoke:
  44.     for loop_dicopoke_line in dicopoke[loop_dicopoke]['sets']:
  45.         pysets_txt=loop_dicopoke_line
  46.         pysets_dico={}
  47.         pysets_dico['item']=loop_dicopoke_line[0][loop_dicopoke_line[0].index('@')+2:]
  48.         pysets_dico['ability']=loop_dicopoke_line[1][9:]
  49.         pysets_dico['nature']=loop_dicopoke_line[3][:-7]
  50.         pysets_EVlist=( loop_dicopoke_line[2][4:]+' ' ).split('/')
  51.         pysets_EVs={'hp':0,'atk':0,'def':0,'spa':0,'spd':0,'spe':0}
  52.         for loop_pysets_EVs in pysets_EVlist:
  53.             pysets_temp=loop_pysets_EVs.split(' ')
  54.             pysets_EVs[pysets_temp[2].lower()]=int(pysets_temp[1])
  55.         pysets_dico['evstats']=pysets_EVs
  56.         pysets_dico['stats']={'hp':datacalc.stathp(dicopoke[loop_dicopoke]['baseStats']['hp'],pysets_EVs['hp']),
  57.         'atk':datacalc.statpashp(dicopoke[loop_dicopoke]['baseStats']['atk'],pysets_EVs['atk'],31,datacalc.natureversboost(pysets_dico['nature'],'atk')),
  58.         'def':datacalc.statpashp(dicopoke[loop_dicopoke]['baseStats']['def'],pysets_EVs['def'],31,datacalc.natureversboost(pysets_dico['nature'],'def')),
  59.         'spa':datacalc.statpashp(dicopoke[loop_dicopoke]['baseStats']['spa'],pysets_EVs['spa'],31,datacalc.natureversboost(pysets_dico['nature'],'spa')),
  60.         'spd':datacalc.statpashp(dicopoke[loop_dicopoke]['baseStats']['spd'],pysets_EVs['spd'],31,datacalc.natureversboost(pysets_dico['nature'],'spd')),
  61.         'spe':datacalc.statpashp(dicopoke[loop_dicopoke]['baseStats']['spe'],pysets_EVs['spe'],31,datacalc.natureversboost(pysets_dico['nature'],'spe'))}
  62.         pysets_dico['moves']=[]
  63.         for pysets_dico_loop in loop_dicopoke_line[4:8]:
  64.             pysets_dico['moves'].append( lowerandkill(pysets_dico_loop[2:],[' ','-']) )
  65.         pysets_dico['movesalts']=[]
  66.         for pysets_dico_loop in loop_dicopoke_line[8:]:
  67.             pysets_dico['movesalts'].append( lowerandkill(pysets_dico_loop[2:]) )
  68.         pysets_dico['level']=100      
  69.         dicopoke[loop_dicopoke]['pysets'].append(pysets_dico)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement