[spoiler]
Code: Select all
actor ravishing 31198
{
  MONSTER
  Radius 16//31
  Height 66
  Health 500
  Mass 100
  scale 0.065
  Speed 12
  PainChance 100
  +DONTHURTSPECIES +NOTARGET +FULLVOLDEATH 
  SeeSound "EFF6"
  PainSound "EFF9"
  DeathSound "EFF7"
  ActiveSound ""
  AttackSound ""
  MeleeSound ""
  MeleeDamage  1
  Obituary "You was killed by the ravishing"
  var int user_ghoulactivesound;
  var int user_ghoulactivesound2;
  var int user_ghoulinvisible;//var that told if it is invisible or not
  var int user_ghoulinvisiblecount;//count the time that´s invisible
  var int user_ghoulfirsttime;
  
  States
  {
  Spawn:
    ghou A 0 A_SetUserVar ("user_ghoulfirsttime",1)
    ghou A 0 A_SetUserVar ("user_ghoulactivesound",0)
    ghou A 0 A_SetUserVar ("user_ghoulactivesound2",0)
    ghou A 0 A_SetUserVar ("user_ghoulinvisible",1)
    ghou A 1 A_Look
    Loop
   See:
    ghou A 0 A_JumpIf(user_ghoulfirsttime==1,"GHOULALPHAIN")
    ghou A 0 A_SetUserVar("user_ghoulinvisiblecount",user_ghoulinvisiblecount+1)//0 1 2 3 4 5 6 7 - 8 9 0 1
    ghou A 0 A_JumpIf(user_ghoulactivesound>=7,"GHOULSND")//0 1 2 3 4 5 6 7 0 1 2 - -
    ghou A 0 A_JumpIf(user_ghoulactivesound2>=7,"GHOULSND2")
    ghou A 0 A_JumpIf(user_ghoulinvisible==1,"GHOULNSEE")// 1 1 1 1 1 1 1 - 1 1 1 0 0
    ghou A 0 A_JumpIf(user_ghoulinvisible==0,"GHOULSEE")//  - - - - - - - - - - - 1 1
    Loop
 GHOULNSEE://invisible ghoul see
    ghou A 0 A_ChangeFlag("INVULNERABLE",1)
    ghou A 0 A_SetUserVar("user_ghoulinvisiblecount",user_ghoulinvisiblecount+1)//1 2 3 4 5 6 7 0 1 2 3
    ghou A 0 A_ChangeFlag("NOCLIP",1)
    ghou A 0 A_SetUserVar ("user_ghoulactivesound",user_ghoulactivesound+1)//contador som 1 2 3 4 5 6 7 8 9 10
    ghou G 0 A_JumpIf(user_ghoulinvisiblecount>=60,"GHOULALPHAOUT")//0 0 0 0 0 0 0 0 0 1
    ghou ABCDEFG 2 A_Chase
    Goto see
 GHOULSEE://visible ghoul
    ghou A 0 A_ChangeFlag("INVULNERABLE",0)
    ghou A 0 A_ChangeFlag("NOCLIP",0)
    ghou A 0 A_SetUserVar ("user_ghoulactivesound2",user_ghoulactivesound2+1)
    ghou G 0 A_JumpIf(user_ghoulinvisiblecount>=30,"GHOULALPHAIN")
    ghou ABCDEFG 2 A_Chase
    Goto see
 GHOULSND://play the sound that he does when invisible
	ghou A 0 A_SetUserVar ("user_ghoulactivesound",0)
	ghou A 0 A_Playsound("EFF5")
	Goto see
 GHOULSND2://play the sound that he does when visible
	ghou A 0 A_SetUserVar ("user_ghoulactivesound2",0)
	ghou A 0 A_Playsound("EFF10")
	Goto see
 GHOULALPHAIN://ghoul being visible
	ghou A 0 A_SetUserVar("user_ghoulfirsttime",0)
        ghou A 1 A_SetTranslucent (1.0,0)
	ghou A 1 A_SetTranslucent (0.9,0)
	ghou A 1 A_SetTranslucent (0.8,0)
	ghou A 1 A_SetTranslucent (0.7,0)
	ghou A 1 A_SetTranslucent (0.6,0)
	ghou A 1 A_SetTranslucent (0.5,0)
	ghou A 1 A_SetTranslucent (0.4,0)
	ghou A 1 A_SetTranslucent (0.3,0)
	ghou A 1 A_SetTranslucent (0.2,0)
	ghou A 1 A_SetTranslucent (0.1,0)
	ghou A 1 A_SetTranslucent (0.0,0)
	ghou A 0 A_SetUserVar("user_ghoulinvisiblecount",0)
	ghou A 0 A_SetUserVar("user_ghoulinvisible",1)
	Goto see
 GHOULALPHAOUT://ghoul going out visibility 
	ghou A 0 A_SetUserVar("user_ghoulfirsttime",0)
        ghou A 1 A_SetTranslucent (0.0,0)
	ghou A 1 A_SetTranslucent (0.1,0)
	ghou A 1 A_SetTranslucent (0.2,0)
	ghou A 1 A_SetTranslucent (0.3,0)
	ghou A 1 A_SetTranslucent (0.4,0)
	ghou A 1 A_SetTranslucent (0.5,0)
	ghou A 1 A_SetTranslucent (0.6,0)
	ghou A 1 A_SetTranslucent (0.7,0)
	ghou A 1 A_SetTranslucent (0.8,0)
	ghou A 1 A_SetTranslucent (0.9,0)
	ghou A 1 A_SetTranslucent (1.0,0)
	ghou A 0 A_SetUserVar("user_ghoulinvisiblecount",0)
	ghou A 0 A_SetUserVar("user_ghoulinvisible",0)
	Goto see
    
  Pain:
        ghou a 0 A_Pain
	Goto See
  Melee:
        ghou G 0 A_JumpIf(user_ghoulinvisible==1,"GHOULNSEE")
	ghou G 0 A_Playsound("EFF8")
        ghou G 1 A_FaceTarget
	ghou G 0 A_MeleeAttack
        ghou HIJKJIH 1 
	Goto See
  Death:
    ghou A 8 
    ghou B 8 A_Scream
    ghou C 8
    ghou D 8 A_SetTranslucent(1.0,0)
    ghou E 8 A_Fall
    ghou D 8
    ghou E 8
    tnt1 A -1 A_SetFloorClip
    Stop
  Raise:
    pair L 8 A_UnSetFloorClip
    pair KJIHG 8
    Goto See
  }
}I tried to convert it to run on zandronum and the result was that:
DECORATE PART
[spoiler]
Code: Select all
actor ravishing 31198
{
  MONSTER
  Radius 16//31
  Height 66
  Health 0x7fffffff
  Mass 100
  scale 0.065
  Speed 18
  PainChance 100
  +DONTHURTSPECIES +NOTARGET +FULLVOLDEATH 
  SeeSound "EFF6"
  PainSound "EFF9"
  DeathSound "EFF7"
  ActiveSound ""
  AttackSound ""
  MeleeSound ""
  MeleeDamage  1
  Obituary "You was killed by the ravishing"
  
  States
  {
  Spawn:
    ghou A 1 A_Look
    Loop
  See:
        ghou A 0 A_JumpIf(ACS_ExecuteWithResult(476,1)==1,"Shotgun")
	ghou A 0 A_JumpIf(ACS_ExecuteWithResult(8,4,0)==1,"GHOULALPHAIN")
	ghou A 0 ACS_Execute(8,3,1)
	ghou A 0 A_JumpIf(ACS_ExecuteWithResult(8,0,0)>=7,"GHOULSND")
	ghou A 0 A_JumpIf(ACS_ExecuteWithResult(8,1,0)>=7,"GHOULSND2")
	ghou A 0 A_JumpIf(ACS_ExecuteWithResult(8,2,0)==1,"GHOULNSEE")
	ghou A 0 A_JumpIf(ACS_ExecuteWithResult(8,2,0)==0,"GHOULSEE")
    Loop
 GHOULNSEE:
        ghou A 0 A_ChangeFlag("INVULNERABLE",1)
	ghou A 0 ACS_Execute(8,3,1)
        ghou A 0 A_ChangeFlag("NOCLIP",1)
	ghou A 0 ACS_Execute(8,0,1)
	ghou G 0 A_JumpIf(ACS_ExecuteWithResult(8,3,0)>=60,"GHOULALPHAOUT")
        ghou ABCDEFG 2 A_Chase
	Goto see
 GHOULSEE:
    ghou A 0 A_ChangeFlag("INVULNERABLE",0)
    ghou A 0 A_ChangeFlag("NOCLIP",0)
    ghou A 0 ACS_Execute(8,1,1)
    ghou G 0 A_JumpIf(ACS_ExecuteWithResult(3,3,0)>=30,"GHOULALPHAIN")
    ghou ABCDEFG 2 A_Chase
    Goto see
 GHOULSND://toca som ativo invisivel
	ghou A 0 ACS_Execute(8,0,-1)
	ghou A 0 A_Playsound("EFF5")
	Goto see
 GHOULSND2:
	ghou A 0 ACS_Execute(8,1,-1)
	ghou A 0 A_Playsound("EFF10")
	Goto see
 GHOULALPHAIN:
	ghou A 0 ACS_Execute(8,4,-1)
        ghou A 1 A_SetTranslucent (1.0,0)
	ghou A 1 A_SetTranslucent (0.9,0)
	ghou A 1 A_SetTranslucent (0.8,0)
	ghou A 1 A_SetTranslucent (0.7,0)
	ghou A 1 A_SetTranslucent (0.6,0)
	ghou A 1 A_SetTranslucent (0.5,0)
	ghou A 1 A_SetTranslucent (0.4,0)
	ghou A 1 A_SetTranslucent (0.3,0)
	ghou A 1 A_SetTranslucent (0.2,0)
	ghou A 1 A_SetTranslucent (0.1,0)
	ghou A 1 A_SetTranslucent (0.0,0)
	ghou A 0 ACS_Execute(8,3,-1)
	ghou A 0 ACS_Execute(8,2,1)
	Goto see
 GHOULALPHAOUT:
	ghou A 0 ACS_Execute(8,4,-1)
        ghou A 1 A_SetTranslucent (0.0,0)
	ghou A 1 A_SetTranslucent (0.1,0)
	ghou A 1 A_SetTranslucent (0.2,0)
	ghou A 1 A_SetTranslucent (0.3,0)
	ghou A 1 A_SetTranslucent (0.4,0)
	ghou A 1 A_SetTranslucent (0.5,0)
	ghou A 1 A_SetTranslucent (0.6,0)
	ghou A 1 A_SetTranslucent (0.7,0)
	ghou A 1 A_SetTranslucent (0.8,0)
	ghou A 1 A_SetTranslucent (0.9,0)
	ghou A 1 A_SetTranslucent (1.0,0)
	ghou A 0 ACS_Execute(8,3,-1)
	ghou A 0 ACS_Execute(8,2,-1)
	Goto see
    
  Pain:
        ghou a 0 A_Pain
	Goto See
  Melee:
	ghou G 0 A_jumpif(ACS_ExecuteWithResult(8,2,0)==1,"GHOULNSEE")
	ghou G 0 A_Playsound("EFF8")
        ghou G 1 A_FaceTarget
	ghou G 0 A_MeleeAttack
        ghou HIJKJIH 1 
	Goto See
  Death:
    ghou A 8 
    ghou B 8 A_Scream
    ghou C 8
    ghou D 8 A_SetTranslucent(1.0,0)
    ghou E 8 A_Fall
    ghou D 8
    ghou E 8
    tnt1 A -1 A_SetFloorClip
    Stop
  Raise:
    pair L 8 A_UnSetFloorClip
    pair KJIHG 8
    Goto See
  }
}ACS part
[spoiler]
Code: Select all
int user_ghoulactivesound=0;
int user_ghoulactivesound2=0;
int user_ghoulinvisible=1;//variavel fala se esta invisivel ou nao
int user_ghoulinvisiblecount=0;//conta tempo que esta invisivel
int user_ghoulfirsttime=1;
script 8 (int x, int y) 
{
	switch(x)
	{
		case 0:
			if(y==1)
			{
				user_ghoulactivesound++;
			}
			else if(y==-1)
			{
				user_ghoulactivesound=0;
			}
			else
			{
				setresultvalue(user_ghoulactivesound);
			}
			//user_ghoulactivesound
			break;
			
		case 1:
		    if(y==1)
			 {
				user_ghoulactivesound2++;
			 }
			 else if(y==-1)
			 {
				user_ghoulactivesound2=0;
			 }
			 else
				setresultvalue(user_ghoulactivesound2);
			//user_ghoulactivesound2
			
		case 2:
			 if(y==1)
			 {
				user_ghoulinvisible=1;
			 }
			 if(y==0)
			 {
				setresultvalue(user_ghoulinvisible);
			 }
			 //user_ghoulinvisible
			 break;
			 
		case 3:
			 if(y==1)
			 {
				user_ghoulinvisiblecount++;
			 }
			 else if(y==-1)
			 {
				user_ghoulinvisiblecount=0;
			 }
			 else
			 {
        setresultvalue(user_ghoulinvisiblecount);
			 }
			 //user_ghoulinvisiblecount
			 break;
			 
		case 4:
			 if(y==-1)
			 {
				user_ghoulfirsttime=0;
			 }
			 else
				setresultvalue(0);
			 //user_ghoulfirsttime
			 break;
	}
}
The good part, it worked on zandronum, the bad part, sound are not being played, the monster can´t be visible, and it crash if you try to use it online =/.
So any help would be very good pls, i am not a expert on decorate :s