Jump to content

Anyone using NewThread() fuction in a mod?


rydin

Recommended Posts

Posted

 

 

Function punish(Actor _target, Actor _player, String _tag = "", bool _aggressive = false)
    String supress = ""
    String tag = _tag
    If(_aggressive)
        tag = tag + ", Aggressive"
    EndIf

    If _player.IsWeaponDrawn()
        _player.SheatheWeapon()
    EndIf

    sslThreadModel Model = SexLab.NewThread()
    sslBaseAnimation[] anims
    actor[] activeActors = new actor[2]

    If _player.GetActorBase().GetSex() == 0                    ; male player always penetrates
        Model.AddActor(_target, _aggressive)
        Model.AddActor(_player, false)
        supress = "lesbian, FF"
    Else                                    ; PC is not male -> PC is female
        If _tag == "Oral"                        ; female player is licked
            Model.AddActor(_player, false)
            Model.AddActor(_target, _aggressive)
            anims = new sslBaseAnimation[1]
            anims[0] = SexLab.GetAnimationByName("Zyn Licking")
        ElseIf _tag == "Anal"
            If _aggressive                        ; female player penetrates NPC
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", fisting"
            Else
                Model.AddActor(_player, false)
                Model.AddActor(_target, _aggressive)
                tag = tag + ", Cowgirl"
            EndIf
        ElseIf _tag == "Vaginal"
            If _target.GetLeveledActorBase().GetSex() == 0        ;female player, male NPC
                    Model.AddActor(_player, false)        ; female player uses cowgirl
                    Model.AddActor(_target, _aggressive)
                    tag = tag + ", Cowgirl"
                Else                        ; female player penetrates NPC
                    Model.AddActor(_target, _aggressive)
                    Model.AddActor(_player, false)
                    tag = tag + ", fisting"
                EndIf
            Else
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", lesbian, FF"
            EndIf
    EndIf

    If !anims
        anims = SexLab.GetAnimationsByTags(2, tag, supress)
    EndIf

    Model.DisableUndressAnimation(_target)
;    if(!_aggressive)
;        supress = "Aggressive, "
;    endIf

    Model.SetAnimations(anims)
    If _aggressive
        RegisterForModEvent("AnimationEnd_PostRape", "PostRape")
        Model.SetHook("PostRape")
    Else
        RegisterForModEvent("AnimationEnd_PostFornicate", "PostFornicate")
        Model.SetHook("PostFornicate")
    EndIf

    Model.StartThread()
EndFunction

Posted

 

 

 

 

 

Function punish(Actor _target, Actor _player, String _tag = "", bool _aggressive = false)
    String supress = ""
    String tag = _tag
    If(_aggressive)
        tag = tag + ", Aggressive"
    EndIf

    If _player.IsWeaponDrawn()
        _player.SheatheWeapon()
    EndIf

    sslThreadModel Model = SexLab.NewThread()
    sslBaseAnimation[] anims
    actor[] activeActors = new actor[2]

    If _player.GetActorBase().GetSex() == 0                    ; male player always penetrates
        Model.AddActor(_target, _aggressive)
        Model.AddActor(_player, false)
        supress = "lesbian, FF"
    Else                                    ; PC is not male -> PC is female
        If _tag == "Oral"                        ; female player is licked
            Model.AddActor(_player, false)
            Model.AddActor(_target, _aggressive)
            anims = new sslBaseAnimation[1]
            anims[0] = SexLab.GetAnimationByName("Zyn Licking")
        ElseIf _tag == "Anal"
            If _aggressive                        ; female player penetrates NPC
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", fisting"
            Else
                Model.AddActor(_player, false)
                Model.AddActor(_target, _aggressive)
                tag = tag + ", Cowgirl"
            EndIf
        ElseIf _tag == "Vaginal"
            If _target.GetLeveledActorBase().GetSex() == 0        ;female player, male NPC
                    Model.AddActor(_player, false)        ; female player uses cowgirl
                    Model.AddActor(_target, _aggressive)
                    tag = tag + ", Cowgirl"
                Else                        ; female player penetrates NPC
                    Model.AddActor(_target, _aggressive)
                    Model.AddActor(_player, false)
                    tag = tag + ", fisting"
                EndIf
            Else
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", lesbian, FF"
            EndIf
    EndIf

    If !anims
        anims = SexLab.GetAnimationsByTags(2, tag, supress)
    EndIf

    Model.DisableUndressAnimation(_target)
;    if(!_aggressive)
;        supress = "Aggressive, "
;    endIf

    Model.SetAnimations(anims)
    If _aggressive
        RegisterForModEvent("AnimationEnd_PostRape", "PostRape")
        Model.SetHook("PostRape")
    Else
        RegisterForModEvent("AnimationEnd_PostFornicate", "PostFornicate")
        Model.SetHook("PostFornicate")
    EndIf

    Model.StartThread()
EndFunction

 

 

Oh, just wondered, whether such code should be treated as an adult, porn content or not :D

 

 

Posted

 

 

 

 

 

 

 

Function punish(Actor _target, Actor _player, String _tag = "", bool _aggressive = false)
    String supress = ""
    String tag = _tag
    If(_aggressive)
        tag = tag + ", Aggressive"
    EndIf

    If _player.IsWeaponDrawn()
        _player.SheatheWeapon()
    EndIf

    sslThreadModel Model = SexLab.NewThread()
    sslBaseAnimation[] anims
    actor[] activeActors = new actor[2]

    If _player.GetActorBase().GetSex() == 0                    ; male player always penetrates
        Model.AddActor(_target, _aggressive)
        Model.AddActor(_player, false)
        supress = "lesbian, FF"
    Else                                    ; PC is not male -> PC is female
        If _tag == "Oral"                        ; female player is licked
            Model.AddActor(_player, false)
            Model.AddActor(_target, _aggressive)
            anims = new sslBaseAnimation[1]
            anims[0] = SexLab.GetAnimationByName("Zyn Licking")
        ElseIf _tag == "Anal"
            If _aggressive                        ; female player penetrates NPC
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", fisting"
            Else
                Model.AddActor(_player, false)
                Model.AddActor(_target, _aggressive)
                tag = tag + ", Cowgirl"
            EndIf
        ElseIf _tag == "Vaginal"
            If _target.GetLeveledActorBase().GetSex() == 0        ;female player, male NPC
                    Model.AddActor(_player, false)        ; female player uses cowgirl
                    Model.AddActor(_target, _aggressive)
                    tag = tag + ", Cowgirl"
                Else                        ; female player penetrates NPC
                    Model.AddActor(_target, _aggressive)
                    Model.AddActor(_player, false)
                    tag = tag + ", fisting"
                EndIf
            Else
                Model.AddActor(_target, _aggressive)
                Model.AddActor(_player, false)
                tag = tag + ", lesbian, FF"
            EndIf
    EndIf

    If !anims
        anims = SexLab.GetAnimationsByTags(2, tag, supress)
    EndIf

    Model.DisableUndressAnimation(_target)
;    if(!_aggressive)
;        supress = "Aggressive, "
;    endIf

    Model.SetAnimations(anims)
    If _aggressive
        RegisterForModEvent("AnimationEnd_PostRape", "PostRape")
        Model.SetHook("PostRape")
    Else
        RegisterForModEvent("AnimationEnd_PostFornicate", "PostFornicate")
        Model.SetHook("PostFornicate")
    EndIf

    Model.StartThread()
EndFunction

 

 

Oh, just wondered, whether such code should be treated as an adult, porn content or not :D

 

 

You wouldn't be the first to furiously masturbate to my code.

 

 

Posted

You can see how it works easily by looking at the code for the StartSex() function in SexLabFramework.psc. StartSex() is just a shorthand for using NewThread() internally with a couple common of model setup functions abstracted out into a single function.

 

It basically just boils down to :

; // Claim an empty thread for use
sslThreadModel Model = SexLab.NewThread()

; // Call any setup functions from sslThreadModel.psc you want
; // Only Model.AddActor(Actor) or Model.AddActors(Actor[]) is required
; // SexLab will compensate and use defaults for anything not setup in this phase.

; // Start the animation once scene is fully customized/setup
sslThreadController Thread = Model.StartThread()

; // Check if animation successfully started
if Thread != None
    ; // Do stuff with active animation Thread, like Thread.AdvanceStage() or Thread.StopAnimation()
endIf

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...