home *** CD-ROM | disk | FTP | other *** search
/ PC PowerPlay 56 / CDPowerplay56Disc2.iso / demos / blade / data1.cab / Program_Executable_Files / Lib / ScorerActions.py < prev    next >
Encoding:
Text File  |  2000-10-27  |  8.0 KB  |  297 lines

  1.  
  2. import Actions
  3. import Enm_Def
  4. import Reference
  5. import pdb
  6. import Bladex
  7.  
  8.  
  9.  
  10.  
  11. #
  12. # ........
  13. #
  14.  
  15.  
  16.  
  17. def IncCallBack():
  18.   Reference.debugprint ("IncCallBack: Hola")
  19.  
  20.  
  21. ############
  22.  
  23. def InvChangeLeft(EntityName):
  24.   me=Bladex.GetEntity(EntityName)
  25.   if me.ActiveEnemy:
  26.       me.AddAnmEventFunc("ChangeLEvent",ChangeLEventHandler)
  27.       me.LaunchAnmType("Attack_Chg_l")
  28.   else:
  29.       me.AddAnmEventFunc("ChangeLEvent",ChangeLEventHandler)
  30.       me.LaunchAnmType("Chg_l")
  31.  
  32.  
  33. #PEPET
  34.  
  35. def InvChangeRight(EntityName):
  36.   me=Bladex.GetEntity(EntityName)
  37.   
  38.   #des_weapon_name=inv.GetSelectedWeapon()
  39.   #if Reference.GiveWeaponFlag(des_weapon_name)<>Reference.W_FLAG_1H and me.InvLeft<>"":
  40.  
  41.   if me.ActiveEnemy:
  42.       me.AddAnmEventFunc("ChangeREvent",ChangeREventHandler)
  43.       me.LaunchAnmType("Attack_Chg_r")
  44.   else:
  45.       me.AddAnmEventFunc("ChangeREvent",ChangeREventHandler)
  46.       me.LaunchAnmType("Chg_r")
  47.  
  48.  
  49. def InvChangeRightLeft(EntityName):
  50.   me=Bladex.GetEntity(EntityName)
  51.   if me.ActiveEnemy:
  52.       me.AddAnmEventFunc("ChangeRLEvent",ChangeRLEventHandler)
  53.       me.LaunchAnmType("Attack_Chg_r_l")
  54.   else:
  55.       me.AddAnmEventFunc("ChangeRLEvent",ChangeRLEventHandler)
  56.       me.LaunchAnmType("Chg_r_l")
  57.  
  58.  
  59.  
  60. def ChangeLEventHandler(pj_name,event):
  61.   me=Bladex.GetEntity(pj_name)
  62.   me.DelAnmEventFunc("ChangeLEvent")
  63.   inv=me.GetInventory()     
  64.   tmp_lback=me.InvLeftBack  
  65.  
  66.   print    "ChangeLEventHandler"
  67.   des_shield=inv.GetSelectedShield()
  68.   if des_shield:
  69.       inv.LinkLeftHand(des_shield)
  70.   inv.LinkBack("None")
  71.   if tmp_lback:
  72.       inv.LinkBack(tmp_lback)
  73.  
  74.  
  75. def ChangeQuiverHandler(pj_name,event):
  76.     me=Bladex.GetEntity(pj_name)
  77.     me.DelAnmEventFunc("ChangeREvent")
  78.     inv=me.GetInventory()        
  79.         
  80.         # Put back the arrow
  81.         if me.InvRight and Reference.GiveObjectFlag(me.InvRight)==Reference.OBJ_ARROW:            
  82.             Actions.SheatheArrow(inv, me.InvRight)
  83.     
  84.     # Change the quiver
  85.     Actions.UnSheatheArrow(inv)
  86.  
  87. def CB_SO_AnmEnd(EntityName):
  88.   me=Bladex.GetEntity(EntityName)
  89.   inv=me.GetInventory()
  90.     
  91.   deal_quivers=0
  92.   des_weapon_name=inv.GetSelectedWeapon()
  93.   if des_weapon_name:
  94.       des_weapon=Bladex.GetEntity(des_weapon_name)
  95.       if Reference.GiveObjectFlag(des_weapon_name)==Reference.OBJ_BOW:
  96.       deal_quivers=1
  97.  
  98.   if deal_quivers:
  99.       if inv.GetSelectedQuiver() != inv.GetActiveQuiver():
  100.           me.AddAnmEventFunc("ChangeREvent",ChangeQuiverHandler)
  101.           me.LaunchAnmType("Chg_r")
  102.   else:
  103.       des_shield=inv.GetSelectedShield()
  104.       if des_shield:
  105.       if des_shield==me.InvLeft or des_shield==me.InvLeftBack:
  106.           return
  107.       if Actions.SthOnBack(EntityName)==1 and me.InvRightBack and not me.InvRight:
  108.           InvChangeRightLeft(EntityName)
  109.       else:
  110.           InvChangeLeft(EntityName)
  111.       else:
  112.       Reference.debugprint("no des_shield")
  113.  
  114.  
  115.  
  116.  
  117. ############
  118.  
  119. def ChangeRLEventHandler(pj_name,event):    
  120.     me=Bladex.GetEntity(pj_name)        
  121.     me.DelAnmEventFunc("ChangeRLEvent")
  122.     inv=me.GetInventory()
  123.     des_weapon_name=inv.GetSelectedWeapon()
  124.     des_weapon=Bladex.GetEntity(des_weapon_name)
  125.     if me.InvLeft and Reference.GiveObjectFlag(me.InvLeft)==Reference.OBJ_BOW:
  126.         if me.InvRight and Reference.GiveObjectFlag(me.InvRight)==Reference.OBJ_ARROW:            
  127.             Actions.SheatheArrow(inv, me.InvRight)
  128.             
  129.     if des_weapon_name <> "":
  130.         inv.LinkBack("None")
  131.     
  132.     if Reference.GiveObjectFlag(des_weapon_name)==Reference.OBJ_BOW:
  133.         if Actions.StatL(me.Name) == Actions.LA_SHIELD:
  134.             inv.LinkBack("None")
  135.         inv.LinkLeftHand("None")
  136.         inv.LinkLeftHand(des_weapon_name)
  137.         Actions.UnSheatheArrow(inv)
  138.     else:
  139.         tmp_r_flag=Reference.W_FLAG_1H
  140.         if des_weapon_name:
  141.             tmp_r_flag=Reference.GiveWeaponFlag(des_weapon_name)
  142.  
  143.         if tmp_r_flag<>Reference.W_FLAG_1H:
  144.             inv.LinkLeftHand("None")
  145.             inv.LinkRightHand(des_weapon_name)
  146.             return
  147.         else:
  148.             curr_left_name=inv.GetSelectedShield() 
  149.             if curr_left_name:
  150.                 inv.LinkLeftHand(curr_left_name)
  151.             else:
  152.                 inv.LinkLeftHand("None")
  153.             inv.LinkRightHand(des_weapon_name)
  154.  
  155.  
  156.  
  157. def ChangeREventHandler(pj_name,event):
  158.     me=Bladex.GetEntity(pj_name)
  159.     me.DelAnmEventFunc("ChangeREvent")
  160.     inv=me.GetInventory()
  161.     des_weapon_name=inv.GetSelectedWeapon()
  162.     if des_weapon_name:
  163.     des_weapon=Bladex.GetEntity(des_weapon_name)
  164.     if Reference.GiveObjectFlag(des_weapon_name)==Reference.OBJ_BOW:
  165.         inv.LinkLeftHand(des_weapon_name)
  166.         des_quiver_name=inv.GetSelectedQuiver()
  167.         if des_quiver_name:
  168.         inv.LinkRightHand(des_quiver_name)
  169.         else:
  170.         inv.LinkRightHand("None")
  171.     else:         
  172.         inv.LinkRightHand(des_weapon_name)
  173.     inv.LinkBack("None")
  174.  
  175.  
  176.  
  177. def CB_ShieldOutX(EntityName,cycle):      
  178.     me=Bladex.GetEntity(EntityName)
  179.     if me.Wuea==Reference.WUEA_WAIT:
  180.         return
  181.  
  182.     tmp_r_flag=Reference.W_FLAG_1H
  183.     if me.InvRight:
  184.         tmp_r_flag=Reference.GiveWeaponFlag(me.InvRight)
  185.  
  186.     if tmp_r_flag==Reference.W_FLAG_2W or tmp_r_flag==Reference.W_FLAG_AXE or tmp_r_flag==Reference.W_FLAG_SP:
  187.         return 
  188.  
  189.  
  190.     deal_quiver=0
  191.     inv=me.GetInventory()
  192.     des_weapon_name=inv.GetSelectedWeapon()
  193.     if des_weapon_name:
  194.           des_weapon=Bladex.GetEntity(des_weapon_name)
  195.             if Reference.GiveObjectFlag(des_weapon_name)==Reference.OBJ_BOW:
  196.                 # Maybe change later to get out a quiver here
  197.                 deal_quiver=1
  198.     
  199.     if cycle :
  200.         if deal_quiver:
  201.             inv.CycleQuivers()
  202.         else:
  203.             inv.CycleShields()
  204.     
  205.     if deal_quiver:
  206.         des_quiver=inv.GetSelectedQuiver() 
  207.         if not des_quiver:
  208.             return    
  209.  
  210.         CB_SO_AnmEnd(EntityName)
  211.     else:
  212.         des_shield=inv.GetSelectedShield()  
  213.         if not des_shield:
  214.             return
  215.     
  216.         if Actions.StatL(me.Name) <> Actions.LA_NO_WEAPON and Actions.StatL(me.Name) <> Actions.LA_SHIELD:
  217.             object= Bladex.GetEntity(me.InvLeft)
  218.             if Actions.StatL(me.Name) <> Actions.LA_NO_WEAPON:
  219.                 if Actions.TryDropLeft(EntityName):
  220.                     Reference.debugprint("CB_ShieldOut. I can    drop it")
  221.                     me.AnmEndedFunc=CB_SO_AnmEnd
  222.         else:
  223.             CB_SO_AnmEnd(EntityName)
  224.     print "CB_ShieldOutX"
  225.  
  226.  
  227.  
  228. def CB_ShieldOut(): 
  229.     CB_ShieldOutX("Player1",0)
  230.  
  231. ############
  232.  
  233.  
  234.  
  235. def CB_WO_AnmEnd(EntityName):
  236.   me=Bladex.GetEntity(EntityName)
  237.   inv=me.GetInventory()
  238.   des_weapon_name=inv.GetSelectedWeapon()
  239.   left_bow=0
  240.   curr_left_name=me.InvLeft
  241.   if curr_left_name:
  242.       curr_left=Bladex.GetEntity(curr_left_name)
  243.       if Reference.GiveObjectFlag(curr_left_name)==Reference.OBJ_BOW:
  244.       left_bow=1
  245.   if des_weapon_name:
  246.       des_weapon=Bladex.GetEntity(des_weapon_name)
  247.       if Reference.GiveObjectFlag(des_weapon_name)==Reference.OBJ_BOW or left_bow:      
  248.       if des_weapon_name==me.InvLeft:
  249.           return
  250.       Actions.UnGraspString (EntityName,"UnGraspString")
  251.       InvChangeRightLeft(EntityName)
  252.       else:
  253.       if des_weapon_name==me.InvRight or des_weapon_name==me.InvRightBack:
  254.           return
  255.       if Actions.SthOnBack(EntityName)==1 and me.InvLeftBack:
  256.           InvChangeRightLeft(EntityName)
  257.       else:
  258.           if Reference.GiveWeaponFlag(des_weapon_name)<>Reference.W_FLAG_1H and me.InvLeft<>"":              
  259.               InvChangeRightLeft(EntityName)
  260.           else:
  261.               InvChangeRight(EntityName)
  262.   else:
  263.       Reference.debugprint("no des_weapon")
  264.  
  265.  
  266. def CB_WeaponOutX(EntityName,cycle=0):
  267.   me=Bladex.GetEntity(EntityName)  
  268.  
  269.   if me.Wuea==Reference.WUEA_WAIT:
  270.       Reference.debugprint("Wait is on . Returning...")
  271.       return 0
  272.   inv=me.GetInventory()
  273.   if cycle :
  274.       inv.CycleWeapons()
  275.       
  276.   des_w=inv.GetSelectedWeapon()
  277.   if not des_w:
  278.       return 1
  279.   
  280.   curr_right_name=me.InvRight
  281.   if des_w==curr_right_name or des_w==me.InvRightBack:
  282.       return 1
  283.  
  284.   #Do I    have to    drop it    ?  
  285.   if Actions.IsRightHandStandardObject(EntityName):
  286.       if Actions.TryDropRight(EntityName):
  287.       Actions.DropReleaseEventHandler(EntityName, "DropRightEvent")
  288.       CB_WO_AnmEnd(EntityName)           
  289.   else:
  290.       CB_WO_AnmEnd(EntityName)  
  291.   return 1
  292.   
  293. def CB_WeaponOut():
  294.     CB_WeaponOutX("Player1",0)
  295. #
  296. # ........
  297. #