home *** CD-ROM | disk | FTP | other *** search
/ Game.EXE 2001 January / Game.EXE_01_2001.iso / demos / Blade of Darkness / data1.cab / Program_Executable_Files / Scripts / InitParticleSystems.py < prev    next >
Encoding:
Text File  |  2000-11-16  |  27.6 KB  |  1,216 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8. def Init():
  9.  
  10.     import math
  11.     import Bladex
  12.     import Reference
  13.  
  14.  
  15.  
  16.     Bladex.ReadBitMap("..\\..\\Data\\FirePrtl.bmp","FireParticle")
  17.     Bladex.ReadBitMap("..\\..\\Data\\Glow.bmp","Glow")
  18.     Bladex.ReadBitMap("..\\..\\Data\\SunFlare.bmp","SunFlare")
  19.     Bladex.ReadBitMap("..\\..\\Data\\BloodPrtl.bmp","BloodParticle")
  20.     Bladex.ReadAlphaBitMap("..\\..\\Data\\BloodDropPrtl.bmp","BloodDropParticle")
  21.     Bladex.ReadAlphaBitMap("..\\..\\Data\\GenericPrtl.bmp","GenericParticle")
  22.     Bladex.ReadAlphaBitMap("..\\..\\Data\\GenericPrtl2.bmp","GenericParticle2")
  23.     Bladex.ReadAlphaBitMap("..\\..\\Data\\SmokePrtl.bmp","SmokeParticle")
  24.     Bladex.ReadAlphaBitMap("..\\..\\Data\\SmokePrtl2.bmp","SmokeParticle2")
  25.     Bladex.ReadAlphaBitMap("..\\..\\Data\\Flare magico 128.BMP","MagicFlare128")
  26.     Bladex.ReadAlphaBitMap("..\\..\\Data\\Water.bmp","WaterParticle")
  27.     Bladex.ReadAlphaBitMap("..\\..\\Data\\Water2.bmp","WaterParticle2")
  28.     Bladex.ReadAlphaBitMap("..\\..\\Data\\Estrellita2.bmp","StarParticle")
  29.     Bladex.ReadBitMap("..\\..\\Data\\SmokePrtl3.bmp","SmokePart3")
  30.  
  31.  
  32.     ##### Miguillas Particle definition ######
  33.     Bladex.AddParticleGType("Miguillas","GenericParticle",Reference.B_PARTICLE_GTYPE_BLEND,32)
  34.  
  35.     for i in range(32):
  36.         traux=(32.0-i)/32.0
  37.         if(i>16):
  38.             aux=0.0
  39.         else:
  40.             aux=(16.0-i)/16.0
  41.         r=90
  42.         g=70
  43.         b=60
  44.         a=255*(1.0-traux)
  45.         size=20.0*(1.0-aux)
  46.         Bladex.SetParticleGVal("Miguillas",i,r,g,b,a,size)
  47.  
  48.     ##### GreenFire Particle definition ######
  49.     Bladex.AddParticleGType("GreenFire","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,31)
  50.  
  51.     for i in range(32):
  52.         if(i>16):
  53.             aux=0.0
  54.         else:
  55.             aux=(16.0-i)/16.0
  56.         r=10
  57.         g=205
  58.         b=150+105*aux
  59.         a=255.0*(1.0-aux)
  60.         size=150.0-(aux**2.0)*120.0
  61.         Bladex.SetParticleGVal("GreenFire",i,r,g,b,a,size)
  62.  
  63.  
  64.     ##### VenomSmoke Particle definition ######
  65.     Bladex.AddParticleGType("VenomSmoke","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,95)
  66.  
  67.     for i in range(96):
  68.         aux=(96.0-i)/96.0
  69.         r=64
  70.         g=128
  71.         b=64
  72.         a=255.0*math.sqrt(1.0-aux)
  73.         size=40.0+aux*200.0
  74.         Bladex.SetParticleGVal("VenomSmoke",i,r,g,b,a,size)
  75.  
  76.     ##### Fire Particle definition ######
  77.  
  78.     Bladex.AddParticleGType("Fire","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,31)
  79.  
  80.     for i in range(32):
  81.         if(i>16):
  82.             aux=0.0
  83.         else:
  84.             aux=(16.0-i)/16.0
  85.         r=255
  86.         g=min(300.0*(1.0-aux*aux)+148,255.0)
  87.         b=min(255.0*(1.0-aux)+80,255.0)
  88.         a=min(255.0*(1.0-aux),255.0)
  89.         size=80.0+math.sqrt(1.0-aux)*70.0
  90.         Bladex.SetParticleGVal("Fire",i,r,g,b,a,size)
  91.  
  92.         
  93.     ##### Large Fire Particle definition ######
  94.  
  95.     Bladex.AddParticleGType("LargeFire","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,31)
  96.  
  97.     for i in range(32):
  98.         if(i>16):
  99.             aux=0.0
  100.         else:
  101.             aux=(16.0-i)/16.0
  102.         r=255
  103.         g=min(300.0*(1.0-aux*aux)+35,255.0)
  104.         b=min(255.0*(1.0-aux)+20,255.0) 
  105.         a=min(200.0*(1.0-aux),255.0)
  106.         size=130.0+math.sqrt(1.0-aux)*110.0
  107.         Bladex.SetParticleGVal("LargeFire",i,r,g,b,a,size)
  108.  
  109.  
  110.     ##### Big Fire Particle definition ######
  111.  
  112.     Bladex.AddParticleGType("BigFire","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,31)
  113.  
  114.     for i in range(32):
  115.         if(i>16):
  116.             aux=0.0
  117.         else:
  118.             aux=(16.0-i)/16.0
  119.         r=255
  120.         g=min(300.0*(1.0-aux*aux)+35,255.0)
  121.         b=min(255.0*(1.0-aux)+20,255.0) 
  122.         a=min(200.0*(1.0-aux),255.0)
  123.         size=275.0+math.sqrt(1.0-aux)*110.0
  124.         Bladex.SetParticleGVal("BigFire",i,r,g,b,a,size)
  125.  
  126.  
  127.     ##### Blood Particle definition ######
  128.  
  129.     Bladex.AddParticleGType("Blood","BloodParticle",Reference.B_PARTICLE_GTYPE_MUL,32)
  130.  
  131.     for i in range(32):
  132.         if(i>16):
  133.             aux=0.0
  134.         else:
  135.             aux=(16.0-i)/16.0
  136.         r=255
  137.         g=255
  138.         b=255
  139.         a=0
  140.         size=20.0*(1.0-aux)+2.0
  141.         Bladex.SetParticleGVal("Blood",i,r,g,b,a,size)
  142.  
  143.     ##### GreenBlood Particle definition ######
  144.  
  145.     Bladex.AddParticleGType("GreenBlood","GenericParticle",Reference.B_PARTICLE_GTYPE_COPY,128)
  146.  
  147.     for i in range(128):
  148.         if(i>64):
  149.             aux=0.0
  150.         else:
  151.             aux=(64.0-i)/64.0
  152.         r=8
  153.         g=16
  154.         b=8
  155.         a=128
  156.         size=20.0*(1.0-aux)+2.0
  157.         Bladex.SetParticleGVal("GreenBlood",i,r,g,b,a,size)
  158.  
  159.     ##### GreyBlood Particle definition ######
  160.  
  161.  
  162.     Bladex.AddParticleGType("GreyBlood","BloodParticle",Reference.B_PARTICLE_GTYPE_MUL,32)
  163.  
  164.     for i in range(32):
  165.         if(i>16):
  166.             aux=0.0
  167.         else:
  168.             aux=(16.0-i)/16.0
  169.         r=100
  170.         g=100
  171.         b=100
  172.         a=0
  173.         size=20.0*(1.0-aux)+2.0
  174.         Bladex.SetParticleGVal("GreyBlood",i,r,g,b,a,size)
  175.  
  176.  
  177.     ##### Splinter Particle definition ######
  178.  
  179.     Bladex.AddParticleGType("Splinter","GenericParticle",Reference.B_PARTICLE_GTYPE_BLEND,16)
  180.  
  181.     for i in range(16):
  182.         if(i>8):
  183.             aux=0.0
  184.         else:
  185.             aux=(8.0-i)/8.0
  186.         r=190
  187.         g=150
  188.         b=50
  189.         a=255*(1.0-aux)
  190.         size=10.0*(1.0-aux)
  191.         Bladex.SetParticleGVal("Splinter",i,r,g,b,a,size)
  192.  
  193.  
  194.     ##### Smoke Particle definition ######
  195.  
  196.     Bladex.AddParticleGType("Smoke","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,64)
  197.  
  198.     for i in range(64):
  199.         aux=(64.0-i)/64.0
  200.         r=255
  201.         g=255
  202.         b=255 
  203.         a=255.0*math.sqrt(1.0-aux)
  204.         size=50.0+aux*300.0
  205.         Bladex.SetParticleGVal("Smoke",i,r,g,b,a,size)
  206.  
  207.     ##### Dark Smoke Particle definition ######
  208.     duration=96
  209.     Bladex.AddParticleGType("DarkSmoke","SmokeParticle2",Reference.B_PARTICLE_GTYPE_BLEND,duration)
  210.     #import pdb
  211.     #pdb.set_trace()
  212.     for i in range(duration):
  213.         if(i>duration/2):
  214.             aux=0.0
  215.         else:
  216.             aux=(duration/2.0-i)/(duration/2.0)
  217.         r=5
  218.         g=3
  219.         b=4
  220.         a=255.0*math.sqrt(1.0-aux)
  221.         size=300.0-(aux**2.0)*240.0
  222.         Bladex.SetParticleGVal("DarkSmoke",i,r,g,b,a,size)
  223.  
  224.     ##### Flame Particle definition #####
  225.  
  226.     Bladex.AddParticleGType("Flame","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,21)
  227.  
  228.     for i in range(21):
  229.         if i>=14:
  230.             aux=1.0/3.0+2*(21.0-i)/21.0 #va de 1/3 a 1
  231.             caux=(21.0-i)/21.0 #va de 0 a 1/3
  232.             saux=3.0*(21.0-i)/21.0 #va de 0 a 1
  233.         elif i>7 and i<14:
  234.             aux=1.0
  235.             caux=1.0/3.0
  236.             saux=1.0
  237.         else:
  238.             aux=1.0-((7.0-i)/7.0) #va de 1 a 0
  239.             caux=1.0/3.0
  240.             saux=1.0-2*((7.0-i)/7.0) #va de 1 a -1
  241.         r=155.0*3.0*caux
  242.         g=155.0*3.0*caux
  243.         b=min(255*(1.0-2.0*caux), 255.0)
  244.         a=100.0*aux
  245.         size=300.0+200.0*saux
  246.         Bladex.SetParticleGVal("Flame",i,r,g,b,a,size)
  247.  
  248.     ##### LargeFlame Particle definition #####
  249.  
  250.     Bladex.AddParticleGType("LargeFlame","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,21)
  251.  
  252.     for i in range(21):
  253.         if i>=14:
  254.             aux=1.0/3.0+2*(21.0-i)/21.0 #va de 1/3 a 1
  255.             caux=(21.0-i)/21.0 #va de 0 a 1/3
  256.             saux=3.0*(21.0-i)/21.0 #va de 0 a 1
  257.         elif i>7 and i<14:
  258.             aux=1.0
  259.             caux=1.0/3.0
  260.             saux=1.0
  261.         else:
  262.             aux=1.0-((7.0-i)/7.0) #va de 1 a 0
  263.             caux=1.0/3.0
  264.             saux=1.0-2*((7.0-i)/7.0) #va de 1 a -1
  265.         r=155.0*3.0*caux
  266.         g=155.0*3.0*caux
  267.         b=min(255*(1.0-2.0*caux), 255.0)
  268.         a=100.0*aux
  269.         size=900.0+600.0*saux
  270.         Bladex.SetParticleGVal("LargeFlame",i,r,g,b,a,size)
  271.  
  272.     ##### DemonShield Particle definition #####
  273.  
  274.     Bladex.AddParticleGType("DemonShield","MagicFlare128",Reference.B_PARTICLE_GTYPE_BLEND,128)
  275.  
  276.     for i in range(128):
  277.         """
  278.         if i>=14:
  279.             aux=1.0/3.0+2*(21.0-i)/21.0 #va de 1/3 a 1
  280.             caux=(21.0-i)/21.0 #va de 0 a 1/3
  281.             saux=3.0*(21.0-i)/21.0 #va de 0 a 1
  282.             a=50.0*aux
  283.             size=300.0+200.0*saux
  284.  
  285.         elif i>7 and i<14:
  286.             aux=1.0
  287.             caux=1.0/3.0
  288.             saux=1.0
  289.             a=50.0*aux
  290.             size=300.0+200.0*saux
  291.         """
  292.         if i <= 21.0:
  293.             aux=1.0-((7.0-i)/7.0) #va de 1 a 0
  294.             caux=1.0/3.0
  295.             saux=1.0-2*((7.0-i)/7.0) #va de 1 a -1
  296.             a=50.0*aux
  297.             size=300.0+200.0*saux
  298.  
  299.         else:
  300.             aux=(128.0-i)/128.0
  301.             if i>64:
  302.                 traux=0.0
  303.             else:
  304.                 traux=(64.0-i)/64.0
  305.             
  306.             a=100.0*(1.0-traux)**0.5
  307.             size=3.0+aux*300.0
  308.                 
  309.         r=max(0.0, min(255*(1.0-2.0*caux), 255.0))
  310.         g=max(0.0, min(255*(1.0-2.0*caux), 255.0))
  311.         b=max(0.0, min(155.0*3.0*caux, 255.0))
  312.         Bladex.SetParticleGVal("DemonShield",i,r,g,b,a,size)
  313.  
  314.  
  315.     ##### Sand Particle definition #####
  316.  
  317.     Bladex.AddParticleGType("Sand","GenericParticle",Reference.B_PARTICLE_GTYPE_BLEND,32)
  318.  
  319.     for i in range(32):
  320.         traux=(32.0-i)/32.0
  321.         if(i>16):
  322.             aux=0.0
  323.         else:
  324.             aux=(16.0-i)/16.0
  325.         r=90
  326.         g=70
  327.         b=60
  328.         a=255*(1.0-traux)
  329.         size=10.0*(1.0-aux)
  330.         Bladex.SetParticleGVal("Sand",i,r,g,b,a,size)
  331.  
  332.  
  333.     ##### Dust Particle definition #####
  334.  
  335.     Bladex.AddParticleGType("Dust","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,64)
  336.  
  337.     for i in range(64):
  338.         if i>32:
  339.             traux=0.0
  340.         else:
  341.             traux=(32.0-i)/32.0
  342.         aux=(64.0-i)/64.0
  343.         r=255
  344.         g=230
  345.         b=210
  346.         a=100.0*(1.0-traux)**0.5
  347.         size=1.0+aux*350.0
  348.         Bladex.SetParticleGVal("Dust",i,r,g,b,a,size)
  349.  
  350.  
  351.     ##### Large Dust Particle definition #####
  352.  
  353.     Bladex.AddParticleGType("LargeDust","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,128)
  354.  
  355.     for i in range(128):
  356.         if i>64:
  357.             traux=0.0
  358.         else:
  359.             traux=(64.0-i)/64.0
  360.         aux=(128.0-i)/128.0
  361.         r=255
  362.         g=230
  363.         b=210
  364.         a=150.0*(1.0-traux)**0.5
  365.         size=10.0+aux*1200.0
  366.         Bladex.SetParticleGVal("LargeDust",i,r,g,b,a,size)
  367.  
  368.  
  369.     ##### Medium Dust Particle definition #####
  370.  
  371.     Bladex.AddParticleGType("MediumDust","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,128)
  372.  
  373.     for i in range(128):
  374.         if i>64:
  375.             traux=0.0
  376.         else:
  377.             traux=(64.0-i)/64.0
  378.         aux=(128.0-i)/128.0
  379.         r=255
  380.         g=230
  381.         b=210
  382.         a=150.0*(1.0-traux)**0.5
  383.         size=4.0+aux*400.0
  384.         Bladex.SetParticleGVal("MediumDust",i,r,g,b,a,size)
  385.  
  386.     ##### Venom Particle definition ######
  387.  
  388.     duration=32
  389.     max_opacity=180.0
  390.     Bladex.AddParticleGType("Venom","GenericParticle",Reference.B_PARTICLE_GTYPE_BLEND,duration)
  391.     #import pdb
  392.     #pdb.set_trace()
  393.     for i in range(duration):
  394.         if(i>duration/2):
  395.             aux=0.0
  396.         else:
  397.             aux=(duration/2.0-i)/(duration/2.0)
  398.         r=0
  399.         g=5
  400.         b=0
  401.         a=max_opacity-(max(0,i-duration/2.0)*max_opacity)
  402.         #a= MAX(0, (16.0-i)/16.0)   MIN (1.0, i-16.0     )
  403.         #a=180
  404.         size=30.0*(1.0-aux)+2.0
  405.         Bladex.SetParticleGVal("Venom",i,r,g,b,a,size)
  406.         
  407.     ##### Vomit Particle definition ######
  408.  
  409.     duration=32
  410.     max_opacity=180.0
  411.     Bladex.AddParticleGType("Vomit","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,duration)
  412.     #import pdb
  413.     #pdb.set_trace()
  414.     for i in range(duration):
  415.         if(i>duration/2):
  416.             aux=0.0
  417.         else:
  418.             aux=(duration/2.0-i)/(duration/2.0)
  419.         r=180
  420.         g=255
  421.         b=180
  422.         a=max_opacity-(max(0,i-duration/2.0)*max_opacity)
  423.         #a= MAX(0, (16.0-i)/16.0)   MIN (1.0, i-16.0     )
  424.         #a=180
  425.         size=30.0*(1.0-aux)+2.0
  426.         Bladex.SetParticleGVal("Vomit",i,r,g,b,a,size)
  427.  
  428.     Bladex.AddParticleGType("Energia2","GenericParticle",Reference.B_PARTICLE_GTYPE_ADD,120)
  429.     
  430.     for i in range(120):
  431.         if i>90:
  432.             traux=1-((i-90.0)/30.0) #va de 0 a 1
  433.         elif i<20:
  434.             traux=i/20.0 #va de 1 a 0
  435.         else:
  436.             traux=1.0
  437.         r=100
  438.         g=100
  439.         b=255
  440.         a=255.0*traux
  441.         size=20.0
  442.         Bladex.SetParticleGVal("Energia2",i,r,g,b,a,size)
  443.     
  444.     
  445.     ##### Demon energy Particle definition ######
  446.     Bladex.AddParticleGType("Energia3","GenericParticle",Reference.B_PARTICLE_GTYPE_ADD,80)
  447.  
  448.     for i in range(80):
  449.         if i>60:
  450.             traux=1-((i-60.0)/20.0) #va de 0 a 1
  451.         elif i<20:
  452.             traux=i/20.0 #va de 1 a 0
  453.         else:
  454.             traux=1.0
  455.         r=255
  456.         g=80
  457.         b=100
  458.         a=255.0*traux
  459.         size=20.0
  460.         Bladex.SetParticleGVal("Energia3",i,r,g,b,a,size)
  461.  
  462.     ##### Fiery Invocation Particle definition ######
  463.     Bladex.AddParticleGType("FuegoInvocacion","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,120)
  464.  
  465.     for i in range(120):
  466.         if i<40:
  467.             traux=i/40.0 #va de 1 a 0
  468.         else:
  469.             traux=1.0
  470.         r=150
  471.         g=100
  472.         b=255
  473.         a=255.0*traux
  474.         size=400.0
  475.         Bladex.SetParticleGVal("FuegoInvocacion",i,r,g,b,a,size)
  476.  
  477.  
  478.     ##### Energy concentration
  479.  
  480.     Bladex.AddParticleGType("EnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  481.  
  482.     for i in range(60):
  483.         if i>10:
  484.             traux=(60.0-i)/50.0 #va de 0 a 1
  485.         else:
  486.             traux=i/10.0 #va de 1 a 0
  487.         r=100
  488.         g=130
  489.         b=255
  490.         a=255.0*traux
  491.         size=20.0+250.0*(1-i/60.0)**2.0
  492.         Bladex.SetParticleGVal("EnergyConc",i,r,g,b,a,size)
  493.  
  494.  
  495.     ##### Energy dissipation
  496.  
  497.     Bladex.AddParticleGType("EnergyDissip","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  498.  
  499.     for i in range(60):
  500.         if i>50:
  501.             traux=(60.0-i)/10.0 #va de 0 a 1
  502.         else:
  503.             traux=i/50.0 #va de 1 a 0
  504.         r=100
  505.         g=130
  506.         b=255
  507.         a=255.0*traux
  508.         size=20.0+250.0*(1-(1-i/60.0)**0.5)
  509.         Bladex.SetParticleGVal("EnergyDissip",i,r,g,b,a,size)
  510.  
  511.  
  512.     ##### Little Energy dissipation
  513.  
  514.     Bladex.AddParticleGType("LittleEnergyDissip","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  515.  
  516.     for i in range(30):
  517.         if i>25:
  518.             traux=(30.0-i)/5.0 #va de 0 a 1
  519.         else:
  520.             traux=i/25.0 #va de 1 a 0
  521.         r=100
  522.         g=130
  523.         b=255
  524.         a=255.0*traux
  525.         size=250.0*(1-(1-i/30.0)**0.5)
  526.         Bladex.SetParticleGVal("LittleEnergyDissip",i,r,g,b,a,size)
  527.  
  528.  
  529.     ##### Blue Magic Missile
  530.  
  531.     Bladex.AddParticleGType("BlueMagicMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  532.  
  533.     for i in range(30):
  534.         if i>25:
  535.             traux=(30.0-i)/5.0 #va de 0 a 1
  536.         else:
  537.             traux=i/25.0 #va de 1 a 0
  538.         r=100
  539.         g=130
  540.         b=255
  541.         a=255.0*traux
  542.         size=340.0*(1-(1-i/30.0)**0.5)
  543.         Bladex.SetParticleGVal("BlueMagicMissile",i,r,g,b,a,size)
  544.  
  545.  
  546.     ##### Fast Blue Energy concentration
  547.  
  548.     Bladex.AddParticleGType("FastEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  549.  
  550.     for i in range(30):
  551.         if i>5:
  552.             traux=(30.0-i)/25.0 #va de 0 a 1
  553.         else:
  554.             traux=i/5.0 #va de 1 a 0
  555.         r=100
  556.         g=130
  557.         b=255
  558.         a=255.0*traux
  559.         size=10.0+150.0*(1-i/30.0)**2.0
  560.         Bladex.SetParticleGVal("FastEnergyConc",i,r,g,b,a,size)
  561.  
  562.  
  563.     ##### Red Magic Missile
  564.  
  565.     Bladex.AddParticleGType("RedMagicMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  566.  
  567.     for i in range(30):
  568.         if i>25:
  569.             traux=(30.0-i)/5.0 #va de 0 a 1
  570.         else:
  571.             traux=i/25.0 #va de 1 a 0
  572.         r=255
  573.         g=130
  574.         b=100
  575.         a=255.0*traux
  576.         size=340.0*(1-(1-i/30.0)**0.5)
  577.         Bladex.SetParticleGVal("RedMagicMissile",i,r,g,b,a,size)
  578.  
  579.  
  580.     ##### Fast Red Energy concentration
  581.  
  582.     Bladex.AddParticleGType("FastRedEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  583.  
  584.     for i in range(30):
  585.         if i>5:
  586.             traux=(30.0-i)/25.0 #va de 0 a 1
  587.         else:
  588.             traux=i/5.0 #va de 1 a 0
  589.         r=255
  590.         g=130
  591.         b=100
  592.         a=255.0*traux
  593.         size=10.0+150.0*(1-i/30.0)**2.0
  594.         Bladex.SetParticleGVal("FastRedEnergyConc",i,r,g,b,a,size)
  595.  
  596.  
  597.     ##### Deep Red Energy concentration
  598.  
  599.     Bladex.AddParticleGType("DeepRedEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  600.  
  601.     for i in range(60):
  602.         if i>10:
  603.             traux=(60.0-i)/50.0 #va de 0 a 1
  604.         else:
  605.             traux=i/10.0 #va de 1 a 0
  606.         r=255
  607.         g=50
  608.         b=40
  609.         a=255.0*traux
  610.         size=320.0*(1-i/60.0)**2.0
  611.         Bladex.SetParticleGVal("DeepRedEnergyConc",i,r,g,b,a,size)
  612.  
  613.  
  614.     ##### Deep Red Magic Missile
  615.  
  616.     Bladex.AddParticleGType("DeepRedMagicMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  617.  
  618.     for i in range(30):
  619.         if i>25:
  620.             traux=(30.0-i)/5.0 #va de 0 a 1
  621.             aux=traux**0.5
  622.         else:
  623.             traux=i/25.0 #va de 1 a 0
  624.             aux=traux**2.0
  625.         r=255
  626.         g=50
  627.         b=40
  628.         a=255.0*traux
  629.         size=400.0*aux
  630.         Bladex.SetParticleGVal("DeepRedMagicMissile",i,r,g,b,a,size)
  631.  
  632.  
  633.  
  634.     ###### Snow dust
  635.  
  636.     Bladex.AddParticleGType("SnowDust","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,64)
  637.     r=255.0
  638.     g=255.0
  639.     b=255.0
  640.     for i in range(68):
  641.         a    = 255*i/64.0
  642.         size = 256*(64-i)/64.0+256
  643.         if i>64: a =0;size = 0
  644.  
  645.         Bladex.SetParticleGVal("SnowDust",i,r,g,b,a,size)
  646.  
  647.  
  648.     ##### Little blue energy concentration
  649.  
  650.     Bladex.AddParticleGType("LittleBlueEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  651.  
  652.     for i in range(30):
  653.         r=100
  654.         g=130
  655.         b=255
  656.         a=255.0
  657.         size=60.0*(1-i/30.0)**2.0
  658.         Bladex.SetParticleGVal("LittleBlueEnergyConc",i,r,g,b,a,size)
  659.  
  660.  
  661.     ##### Blue spark
  662.  
  663.     Bladex.AddParticleGType("BlueSpark","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,6)
  664.  
  665.     for i in range(6):
  666.         r=100
  667.         g=130
  668.         b=255
  669.         a=255.0
  670.         size=20.0+10.0*(i/6.0)**2.0
  671.         Bladex.SetParticleGVal("BlueSpark",i,r,g,b,a,size)
  672.  
  673.  
  674.     ##### Little blue spark
  675.  
  676.     Bladex.AddParticleGType("LittleBlueSpark","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,6)
  677.  
  678.     for i in range(6):
  679.         r=100
  680.         g=130
  681.         b=255
  682.         a=255.0
  683.         size=10.0+5.0*(i/6.0)**2.0
  684.         Bladex.SetParticleGVal("LittleBlueSpark",i,r,g,b,a,size)
  685.  
  686.  
  687.     ##### Deep Green Energy concentration
  688.  
  689.     Bladex.AddParticleGType("DeepGreenEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,20)
  690.  
  691.     for i in range(20):
  692.         if i>3:
  693.             traux=1.0
  694.             saux=((20.0-i)/17.0)**2.0 #va de 0 a 1
  695.         else:
  696.             saux=traux=i/3.0 #va de 1 a 0
  697.         r=40
  698.         g=255
  699.         b=60
  700.         a=255.0*traux
  701.         size=100.0*saux
  702.         Bladex.SetParticleGVal("DeepGreenEnergyConc",i,r,g,b,a,size)
  703.  
  704.  
  705.     ##### Deep Green Magic Missile
  706.  
  707.     Bladex.AddParticleGType("DeepGreenMagicMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  708.  
  709.     for i in range(30):
  710.         if i>25:
  711.             traux=(30.0-i)/5.0 #va de 0 a 1
  712.             aux=traux**0.5
  713.         else:
  714.             traux=i/25.0 #va de 1 a 0
  715.             aux=traux**2.0
  716.         r=40
  717.         g=255
  718.         b=60
  719.         a=255.0*traux
  720.         size=400.0*aux
  721.         Bladex.SetParticleGVal("DeepGreenMagicMissile",i,r,g,b,a,size)
  722.  
  723.  
  724.     ##### Multicolour energy dissipation
  725.  
  726.     Bladex.AddParticleGType("MulticolourEnergyDissip","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  727.  
  728.     for i in range(30):
  729.         if i>25:
  730.             traux=(30.0-i)/5.0 #va de 0 a 1
  731.             aux=traux**0.5
  732.         else:
  733.             traux=i/25.0 #va de 1 a 0
  734.             aux=traux**2.0
  735.         r=40
  736.         g=255
  737.         b=60
  738.         a=255.0*traux
  739.         size=300.0*aux
  740.         Bladex.SetParticleGVal("MulticolourEnergyDissip",i,r,g,b,a,size)
  741.  
  742.  
  743.     ##### Deep Orange Energy concentration
  744.  
  745.     Bladex.AddParticleGType("DeepOrangeEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  746.  
  747.     for i in range(30):
  748.         if i>5:
  749.             traux=1.0
  750.             saux=((30.0-i)/25.0)**2.0 #va de 0 a 1
  751.         else:
  752.             saux=traux=i/5.0 #va de 1 a 0
  753.         r=255
  754.         g=100.0*(1.0-i/30.0)
  755.         b=20+80*(i/30.0)
  756.         a=200.0*traux
  757.         size=300.0*saux
  758.         Bladex.SetParticleGVal("DeepOrangeEnergyConc",i,r,g,b,a,size)
  759.  
  760.  
  761.     ##### Deep Orange Magic Missile
  762.  
  763.     Bladex.AddParticleGType("DeepOrangeMagicMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  764.  
  765.     for i in range(30):
  766.         if i>25:
  767.             traux=(30.0-i)/5.0 #va de 0 a 1
  768.             aux=traux**0.5
  769.         else:
  770.             traux=i/25.0 #va de 1 a 0
  771.             aux=traux**2.0
  772.         r=255
  773.         g=100.0*(i/30.0)
  774.         b=20+80*(1.0-i/30.0)
  775.         a=200.0*traux
  776.         size=400.0*aux
  777.         Bladex.SetParticleGVal("DeepOrangeMagicMissile",i,r,g,b,a,size)
  778.  
  779.  
  780.     ##### Multicolour Level Up Particles
  781.  
  782.     Bladex.AddParticleGType("LevelUpParticle","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  783.  
  784.     for i in range(30):
  785.         if i>25:
  786.             traux=(30.0-i)/5.0 #va de 0 a 1
  787.             aux=traux**0.5
  788.         else:
  789.             traux=i/25.0 #va de 1 a 0
  790.             aux=traux**2.0
  791.         r=255
  792.         g=255
  793.         b=255
  794.         a=255.0*traux
  795.         size=200.0*aux
  796.         Bladex.SetParticleGVal("LevelUpParticle",i,r,g,b,a,size)
  797.  
  798.  
  799.     ###
  800.     ####################### DALGURAK
  801.     ###
  802.  
  803.     ##### Multicolour DalGurak Level Up Particles
  804.  
  805.     Bladex.AddParticleGType("DGLevelUpParticle","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  806.  
  807.     for i in range(30):
  808.         if i>25:
  809.             traux=(30.0-i)/5.0 #va de 0 a 1
  810.             aux=traux**0.5
  811.         else:
  812.             traux=i/25.0 #va de 1 a 0
  813.             aux=traux**2.0
  814.         r=255
  815.         g=255
  816.         b=255
  817.         a=255.0*traux
  818.         size=200.0*aux
  819.         Bladex.SetParticleGVal("DGLevelUpParticle",i,r,g,b,a,size)
  820.  
  821.  
  822.     ##### DalGurak LifeUp Energy concentration
  823.  
  824.     Bladex.AddParticleGType("DGLifeUpEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,50)
  825.  
  826.     for i in range(50):
  827.         if i>5:
  828.             traux=1.0
  829.             saux=((50.0-i)/45.0)**2.0 #va de 0 a 1
  830.         else:
  831.             saux=traux=i/5.0 #va de 1 a 0
  832.         r=255
  833.         g=80
  834.         b=20
  835.         a=200.0*traux
  836.         size=200.0*saux
  837.         Bladex.SetParticleGVal("DGLifeUpEnergyConc",i,r,g,b,a,size)
  838.  
  839.  
  840.  
  841.     ###
  842.     ####################### DARKLORD
  843.     ###
  844.  
  845.     ##### Multicolour DarkLord Level Up Particles
  846.  
  847.     Bladex.AddParticleGType("DLLevelUpParticle","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  848.  
  849.     for i in range(30):
  850.         if i>25:
  851.             traux=(30.0-i)/5.0 #va de 0 a 1
  852.             aux=traux**0.5
  853.         else:
  854.             traux=i/25.0 #va de 1 a 0
  855.             aux=traux**2.0
  856.         r=255
  857.         g=255
  858.         b=255
  859.         a=255.0*traux
  860.         size=300.0*aux
  861.         Bladex.SetParticleGVal("DLLevelUpParticle",i,r,g,b,a,size)
  862.  
  863.  
  864.     ##### DarkLord LifeUp Energy concentration
  865.  
  866.     Bladex.AddParticleGType("DLLifeUpEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,50)
  867.  
  868.     for i in range(50):
  869.         if i>5:
  870.             traux=1.0
  871.             saux=((50.0-i)/45.0)**2.0 #va de 0 a 1
  872.         else:
  873.             saux=traux=i/5.0 #va de 1 a 0
  874.         r=255
  875.         g=40
  876.         b=10
  877.         a=200.0*traux
  878.         size=300.0*saux
  879.         Bladex.SetParticleGVal("DLLifeUpEnergyConc",i,r,g,b,a,size)
  880.  
  881.  
  882.  
  883.     ###
  884.     ####################### GREATDEMON
  885.     ###
  886.  
  887.     ##### Multicolour GreatDemon Level Up Particles
  888.  
  889.     Bladex.AddParticleGType("GDLevelUpParticle","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  890.  
  891.     for i in range(30):
  892.         if i>25:
  893.             traux=(30.0-i)/5.0 #va de 0 a 1
  894.             aux=traux**0.5
  895.         else:
  896.             traux=i/25.0 #va de 1 a 0
  897.             aux=traux**2.0
  898.         r=255
  899.         g=255
  900.         b=255
  901.         a=255.0*traux
  902.         size=400.0*aux
  903.         Bladex.SetParticleGVal("GDLevelUpParticle",i,r,g,b,a,size)
  904.  
  905.  
  906.     ##### DarkLord LifeUp Energy concentration
  907.  
  908.     Bladex.AddParticleGType("GDLifeUpEnergyConc","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,50)
  909.  
  910.     for i in range(50):
  911.         if i>5:
  912.             traux=1.0
  913.             saux=((50.0-i)/45.0)**2.0 #va de 0 a 1
  914.         else:
  915.             saux=traux=i/5.0 #va de 1 a 0
  916.         r=255
  917.         g=140
  918.         b=40
  919.         a=200.0*traux
  920.         size=400.0*saux
  921.         Bladex.SetParticleGVal("GDLifeUpEnergyConc",i,r,g,b,a,size)
  922.  
  923.  
  924.  
  925.     #####################################################
  926.     #     Sistemas de particulas para algunas armas     #
  927.     #####################################################
  928.  
  929.     ##### Definicion de particulas de vapor de hielo seco ######
  930.  
  931.     Bladex.AddParticleGType("Vaho","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,60)
  932.  
  933.     for i in range(60):
  934.         if i>40:
  935.             aux=((60.0-i)/20.0)**0.3
  936.         else:
  937.             aux=(i/40.0)**0.5
  938.         r=255
  939.         g=255
  940.         b=255 
  941.         a=140.0*aux
  942.         size=50.0+200.0*aux
  943.         Bladex.SetParticleGVal("Vaho",i,r,g,b,a,size)
  944.  
  945.  
  946.     ##### Definicion de particulas de gas venenoso ######
  947.  
  948.     Bladex.AddParticleGType("GasVenenoso","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,60)
  949.  
  950.     for i in range(60):
  951.         if i>40:
  952.             aux=((60.0-i)/20.0)**0.3
  953.         else:
  954.             aux=(i/40.0)**0.5
  955.         r=85
  956.         g=90
  957.         b=0 
  958.         a=200.0*aux
  959.         size=50.0+200.0*aux
  960.         Bladex.SetParticleGVal("GasVenenoso",i,r,g,b,a,size)
  961.  
  962.  
  963.     ##### Definicion de particulas de gas venenoso2 ######
  964.  
  965.     Bladex.AddParticleGType("GasVenenoso2","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,60)
  966.  
  967.     for i in range(60):
  968.         if i>40:
  969.             aux=((60.0-i)/20.0)**0.3
  970.         else:
  971.             aux=(i/40.0)**0.5
  972.         r=10
  973.         g=180
  974.         b=160 
  975.         a=255.0*aux
  976.         size=400.0+800.0*aux
  977.         Bladex.SetParticleGVal("GasVenenoso2",i,r,g,b,a,size)
  978.  
  979.  
  980.     ##### Definicion de particulas de gotas de sangre ######
  981.  
  982.     Bladex.AddParticleGType("GotasSangre","BloodDropParticle",Reference.B_PARTICLE_GTYPE_BLEND,24)
  983.  
  984.     for i in range(24):
  985.         if i>20:
  986.             aux=((24.0-i)/4.0)**0.5
  987.         elif i<8:
  988.             aux=(i/8.0)**0.5
  989.         else:
  990.             aux=1.0
  991.         r=60
  992.         g=0
  993.         b=0
  994.         a=220.0*aux+35.0
  995.         size=16.0*aux+4.0
  996.         Bladex.SetParticleGVal("GotasSangre",i,r,g,b,a,size)
  997.  
  998.  
  999.     ##### Definicion de llamitas ######
  1000.  
  1001.     Bladex.AddParticleGType("Llamita","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,21)
  1002.  
  1003.     for i in range(21):
  1004.         if i>=14:
  1005.             aux=1.0/3.0+2*(21.0-i)/21.0 #va de 1/3 a 1
  1006.             caux=(21.0-i)/21.0 #va de 0 a 1/3
  1007.             saux=3.0*(21.0-i)/21.0 #va de 0 a 1
  1008.         elif i>7 and i<14:
  1009.             aux=1.0
  1010.             caux=1.0/3.0
  1011.             saux=1.0
  1012.         else:
  1013.             aux=1.0-((7.0-i)/7.0) #va de 1 a 0
  1014.             caux=1.0/3.0
  1015.             saux=1.0-2*((7.0-i)/7.0) #va de 1 a -1
  1016.         r=155.0*3.0*caux
  1017.         g=155.0*3.0*caux
  1018.         b=min(255*(1.0-2.0*caux), 255.0)
  1019.         a=200.0*aux
  1020.         size=4.0+6.0*saux
  1021.         Bladex.SetParticleGVal("Llamita",i,r,g,b,a,size)
  1022.  
  1023.  
  1024.     ##### Definicion de brillitos ######
  1025.  
  1026.     Bladex.AddParticleGType("BrillosBladeSword","StarParticle",Reference.B_PARTICLE_GTYPE_ADD,8)
  1027.  
  1028.     for i in range(8):
  1029.         if i>5:
  1030.             aux=(8.0-i)/3.0
  1031.         else:
  1032.             aux=i/5.0
  1033.         r=235.0
  1034.         g=245.0
  1035.         b=255.0
  1036.         a=255.0
  1037.         size=100.0*aux
  1038.         Bladex.SetParticleGVal("BrillosBladeSword",i,r,g,b,a,size)
  1039.  
  1040.  
  1041.  
  1042.     ################################################################################
  1043.     #     Sistemas de particulas para el efecto de algunas armas en personajes     #
  1044.     ################################################################################
  1045.  
  1046.  
  1047.     ##### Definicion de llamitas2 ######
  1048.  
  1049.     Bladex.AddParticleGType("Llamita2","FireParticle",Reference.B_PARTICLE_GTYPE_ADD,21)
  1050.  
  1051.     for i in range(21):
  1052.         if i>=14:
  1053.             aux=1.0/3.0+2*(21.0-i)/21.0 #va de 1/3 a 1
  1054.             caux=(21.0-i)/21.0 #va de 0 a 1/3
  1055.             saux=3.0*(21.0-i)/21.0 #va de 0 a 1
  1056.         elif i>7 and i<14:
  1057.             aux=1.0
  1058.             caux=1.0/3.0
  1059.             saux=1.0
  1060.         else:
  1061.             aux=1.0-((7.0-i)/7.0) #va de 1 a 0
  1062.             caux=1.0/3.0
  1063.             saux=1.0-2*((7.0-i)/7.0) #va de 1 a -1
  1064.         r=155.0*3.0*caux
  1065.         g=155.0*3.0*caux
  1066.         b=min(255*(1.0-2.0*caux), 255.0)
  1067.         a=160.0*aux
  1068.         size=80.0*saux
  1069.         Bladex.SetParticleGVal("Llamita2",i,r,g,b,a,size)
  1070.  
  1071.  
  1072.     ##### Estela roja
  1073.  
  1074.     Bladex.AddParticleGType("RedTrail","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  1075.  
  1076.     for i in range(60):
  1077.         if i>55:
  1078.             traux=(60.0-i)/5.0 #va de 0 a 1
  1079.         else:
  1080.             traux=i/55.0 #va de 1 a 0
  1081.         r=255
  1082.         g=20
  1083.         b=10
  1084.         a=255.0*traux
  1085.         size=20+200.0*(1-(1-i/60.0)**0.5)
  1086.         Bladex.SetParticleGVal("RedTrail",i,r,g,b,a,size)
  1087.  
  1088.  
  1089.     ##### Estela verde
  1090.  
  1091.     Bladex.AddParticleGType("GreenTrail","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  1092.  
  1093.     for i in range(60):
  1094.         if i>55:
  1095.             traux=(60.0-i)/5.0 #va de 0 a 1
  1096.         else:
  1097.             traux=i/55.0 #va de 1 a 0
  1098.         r=10
  1099.         g=255
  1100.         b=50
  1101.         a=255.0*traux
  1102.         size=20+200.0*(1-(1-i/60.0)**0.5)
  1103.         Bladex.SetParticleGVal("GreenTrail",i,r,g,b,a,size)
  1104.  
  1105.  
  1106.     ##### Estela azul
  1107.  
  1108.     Bladex.AddParticleGType("BlueTrail","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  1109.  
  1110.     for i in range(60):
  1111.         if i>55:
  1112.             traux=(60.0-i)/5.0 #va de 0 a 1
  1113.         else:
  1114.             traux=i/55.0 #va de 1 a 0
  1115.         r=10
  1116.         g=50
  1117.         b=255
  1118.         a=255.0*traux
  1119.         size=20+200.0*(1-(1-i/60.0)**0.5)
  1120.         Bladex.SetParticleGVal("BlueTrail",i,r,g,b,a,size)
  1121.  
  1122.  
  1123.     ##### Estela blanca
  1124.  
  1125.     Bladex.AddParticleGType("WhiteTrail","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  1126.  
  1127.     for i in range(60):
  1128.         if i>55:
  1129.             traux=(60.0-i)/5.0 #va de 0 a 1
  1130.         else:
  1131.             traux=i/55.0 #va de 1 a 0
  1132.         r=255
  1133.         g=255
  1134.         b=255
  1135.         a=255.0*traux
  1136.         size=20+200.0*(1-(1-i/60.0)**0.5)
  1137.         Bladex.SetParticleGVal("WhiteTrail",i,r,g,b,a,size)
  1138.  
  1139.  
  1140.     ##### Estela amarilla
  1141.  
  1142.     Bladex.AddParticleGType("YellowTrail","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,60)
  1143.  
  1144.     for i in range(60):
  1145.         if i>55:
  1146.             traux=(60.0-i)/5.0 #va de 0 a 1
  1147.         else:
  1148.             traux=i/55.0 #va de 1 a 0
  1149.         r=255
  1150.         g=230
  1151.         b=10
  1152.         a=255.0*traux
  1153.         size=20+200.0*(1-(1-i/60.0)**0.5)
  1154.         Bladex.SetParticleGVal("YellowTrail",i,r,g,b,a,size)
  1155.  
  1156.  
  1157.     ######################################################################
  1158.     #     Sistemas de particulas para el misil de la espada de Blade     #
  1159.     ######################################################################
  1160.  
  1161.     Bladex.AddParticleGType("BladeSwordMissile","GenericParticle2",Reference.B_PARTICLE_GTYPE_ADD,30)
  1162.  
  1163.     for i in range(30):
  1164.         if i>25:
  1165.             traux=(30.0-i)/5.0 #va de 0 a 1
  1166.         else:
  1167.             traux=i/25.0 #va de 1 a 0
  1168.         r=100
  1169.         g=130
  1170.         b=255
  1171.         a=255.0*traux
  1172.         size=20.0+250.0*(1-(1-i/30.0)**0.5)
  1173.         Bladex.SetParticleGVal("BladeSwordMissile",i,r,g,b,a,size)
  1174.  
  1175.  
  1176.     ################################################################################
  1177.     #     Sistemas de particulas para el golem de barro                            #
  1178.     ################################################################################
  1179.  
  1180.     Bladex.AddParticleGType("ShitSmoke","SmokeParticle",Reference.B_PARTICLE_GTYPE_BLEND,64)
  1181.     
  1182.     for i in range(64):
  1183.         aux=(64.0-i)/64.0
  1184.         r=128
  1185.         g=80
  1186.         b=32
  1187.         a=255.0*math.sqrt(1.0-aux)
  1188.         size=40.0+aux*200.0
  1189.         Bladex.SetParticleGVal("ShitSmoke",i,r,g,b,a,size)
  1190.         
  1191.     Bladex.AddParticleGType("SacredFX","GenericParticle",Reference.B_PARTICLE_GTYPE_ADD,16)
  1192.     
  1193.     for i in range(16):
  1194.         aux = 1.0-i/16.0
  1195.         r=205
  1196.         g=150
  1197.         b=10
  1198.         a=(1-aux)*128.0
  1199.         size=aux*32
  1200.         Bladex.SetParticleGVal("SacredFX",i,r,g,b,a,size)
  1201.  
  1202.     Bladex.AddParticleGType("DeathCloud","SmokePart3",Reference.B_PARTICLE_GTYPE_MUL,64)
  1203.     
  1204.     
  1205.     for i in range(64):
  1206.         aux=(64.0-i)/64
  1207.         r=255
  1208.         g=255
  1209.         b=255
  1210.         a=0
  1211.         if aux < 0.5:
  1212.             size = aux*512
  1213.         else:
  1214.             size = (1-aux)*512
  1215.         Bladex.SetParticleGVal("DeathCloud",i,r,g,b,a,size)
  1216.