[SOLVED]ATL BLOCK animation is posible with CONDITIONAL?

Discuss how to use the Ren'Py engine to create visual novels and story-based games. New releases are announced in this section.
Forum rules
This is the right place for Ren'Py help. Please ask one question per thread, use a descriptive subject like 'NotFound error in option.rpy' , and include all the relevant information - especially any relevant code and traceback messages. Use the code tag to format scripts.
Message
Author
User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

[SOLVED]ATL BLOCK animation is posible with CONDITIONAL?

#1 Post by johandark » Mon Jan 02, 2017 8:16 am

Right Now I´ve got this:

Code: Select all

image aftermorning04_bg_fittingroom_mast 004: #Mc With T-Shirt
    
    contains:
            "aftermorning04_bg_fittingroom_mast_00_background"
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat
            
    contains:
            "aftermorning04_bg_fittingroom_mast_01_d_bodydown pants"
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat
            
    contains:
            "aftermorning04_bg_fittingroom_mast_02_d_bodyup brablack"
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat
            
    contains:
            "aftermorning04_bg_fittingroom_mast_03_mc_body naked"
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat
            
    contains:
            "aftermorning04_bg_fittingroom_mast_06_mc_shirt normal" #This one is the one I want to HIDE with alpha 0.0 in the next scene.
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat

            block:
                alpha 1.0
                ease_quad 3.0 alpha 0.0
            
    contains:
            "aftermorning04_bg_fittingroom_mast_07_d_armupl"
            xanchor 0.272 yanchor 0.348 alpha 1.0 #backarm Didac
            rotate 0
            easein_quad 2.0 rotate -10
            easein_quad 2.0 rotate 0
            repeat
It´s a whole animated scene (Well I made it shorter here to show it better.. there´s a container called "aftermorning04_bg_fittingroom_mast_06_mc_shirt normal" Wich is the one that represents the Shirt of the Main Character.

In the next scene I would like it disapear with an animation with the rest of the scene intact... Do I have to make a WHOLE new animation copying and pasting it just for one container? Or could I use an ATL BLOCK (as I seen around here) with a CONDITIONAL that if it´s True nothing happens, but if it´s FALSE, then the second option is activated...

Is that posible?

It´s really a pain to have to repeat Animations for all these kind of things...

Let´s imagine that you can choose a differnt color of hair... Would I have to copy and paste all these just if I want different kind of colors, even if there are 20 different??... is there no other way? :(
Last edited by johandark on Wed Jan 04, 2017 12:34 pm, edited 1 time in total.
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#2 Post by xela » Mon Jan 02, 2017 1:54 pm

johandark wrote: Is that posible?

is there no other way? :(
ATL is not the best way to construct complex sprites/dolls, you prolly want a UDD for that. But for your use case, you can simply shove a condition switch or a func or maybe even a plain arg/kwarg instead of the string binding in contain blocks you wish to change/disable.
Like what we're doing? Support us at:
Image

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#3 Post by johandark » Mon Jan 02, 2017 2:07 pm

xela wrote:But for your use case, you can simply shove a condition switch or a func or maybe even a plain arg/kwarg instead of the string binding in contain blocks you wish to change/disable.
Could you give me an example? :S

Thanks!
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#4 Post by xela » Mon Jan 02, 2017 2:25 pm

johandark wrote:Could you give me an example? :S
Of what exactly?
Like what we're doing? Support us at:
Image

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#5 Post by johandark » Mon Jan 02, 2017 2:45 pm

xela wrote: Of what exactly?
Let´s imagine you have a whole animation, and after that you have other animations. like an streptease.

Where hands, legs, arms, are moving in every step in different ways.

If I just want to change their color style, so depending on their points or conditionals... just that thing changes in their animations...

How would you do it? I saw UDD... and it looks pretty far from my posibilites... :(

Thanks for your time.
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#6 Post by xela » Mon Jan 02, 2017 4:31 pm

I understood what you were planning to do. I asked what do you need example of... how to use a CS? Or how to write python functions or atl instructions?

As stated in the first reply, you can replace the image reference in the contain blocks with a CS which is prolly simplest solution for this use case.
Like what we're doing? Support us at:
Image

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#7 Post by johandark » Mon Jan 02, 2017 6:26 pm

xela wrote: you can replace the image reference in the contain blocks with a CS which is prolly simplest solution for this use case.
Doing it like this? It doesn´t work...

Code: Select all

    contains:
            "aftermorning04_bg_fittingroom_mast_03_mc_body naked"
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat
            
    contains:

ConditionSwitch(
            "aftermorning04_bg_fittingroom_mast_06_mc_shirt normal"ConditionSwitch(#This one is the one I want to HIDE with alpha 0.0 in the next scene. 
                        "jill_beers > 4", "jill_drunk.png",
                        "True", "jill_sober.png")
            xanchor -0.985 yanchor -0.54 alpha 1.0
            xpos 0.0 ypos 0.0 rotate 10
            ease 3.0 xpos -0.048 ypos 0.015 rotate -10
            ease 1.0 xpos 0.0 ypos 0.0 rotate 10
            repeat

            block:
                alpha 1.0
                ease_quad 3.0 alpha 0.0
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#8 Post by xela » Tue Jan 03, 2017 2:26 am

It does work:

Code: Select all

image body black = Solid("000", xysize=(90, 90))
image body white = Solid("FFF", xysize=(90, 90))
image shirt = Solid("F00",  xysize=(90, 90))

default body = "white"
default anim_state = "dressed"

transform default_instuctions():
    pos (.0, .0) anchor (-.985, -.54) rotate 10
    ease 3.0 pos (-.048, .015) rotate -10
    ease 1.0 pos (.0, .0) rotate 10
    repeat
    
transform hide_with_alpha():
    alpha 1.0
    ease_quad 3.0 alpha .0

image my_animation:
    contains:
        ConditionSwitch("body == 'white'", At("body white", default_instuctions),
                                   "body == 'black'", At("body black", default_instuctions))
           
    contains:
        ConditionSwitch("anim_state == 'dressed'", At("shirt", default_instuctions),
                                   "anim_state == 'stripping'", At("shirt", default_instuctions, hide_with_alpha),
                                   "anim_state == 'stripped'", Null())
        
label start:
    show my_animation
    "Normal animation..."
    hide my_animation
    
    $ anim_state = "stripping"
    show my_animation
    "Zexy Strip Action!"
    hide my_animaiton
    
    $ anim_state = "stripped"
    $ body = "black"
    show my_animation
    "All in the nude with a tan!"
Like what we're doing? Support us at:
Image

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#9 Post by johandark » Tue Jan 03, 2017 6:28 am

xela wrote:It does work:
Hell Yeaah! It works! Thank you very much!! Now I understood it so much!

Just a little bit more if it´s possible... ^^

I´m using this code.:

Code: Select all

transform aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_position():
    xanchor 0.1 yanchor 0.2 rotate 0 alpha 1.0

image aftermorning04_bg_fittingroom_mast_dass 001: #MC hand air.

    contains:
        ConditionSwitch("pl.dp >= 25", At("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_position),
                                    "pl.dp >= 21", At("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 01", aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_position), 
                                    "pl.dp >= 17", At("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 00", aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_position)) 

2 questions.

1rst: When "pl.dp" is 25, it appears the 3 images, the wet 00, wet 01 and wet 02... Is there a way to say, after 25, hide the previous ones?

2nd: Would it be possible to add properties without having to create a transform? Like this:

Code: Select all

 "pl.dp >= 17", At ("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", xanchor 0.1 yanchor 0.2 rotate 0 alpha 1.0),

Thanks!!
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#10 Post by xela » Tue Jan 03, 2017 8:37 am

johandark wrote: 1rst: When "pl.dp" is 25, it appears the 3 images, the wet 00, wet 01 and wet 02... Is there a way to say, after 25, hide the previous ones?
... you should try stuff yourself before asking questions... just add another condition ("pl.dp >= 21 and pl.dp <= 25").
johandark wrote: 2nd: Would it be possible to add properties without having to create a transform? Like this:

Code: Select all

 "pl.dp >= 17", At ("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", xanchor 0.1 yanchor 0.2 rotate 0 alpha 1.0),
There are like 4 ways to do it, it's all in the docs. Simplest here would be either to add params to the instruction function or to use Transform instead of At.

==============================>>>
On a different note, a slight possible improvement to the previous code, it allows "smooth" stripping without having to hide/show images:

Code: Select all

# ========================================================================================>>>>>
image body black = Solid("000", xysize=(90, 90))
image body white = Solid("FFF", xysize=(90, 90))
image shirt = Solid("F00",  xysize=(90, 90))

default body = "white"
default anim_state = "dressed"

transform default_instuctions():
    pos (.0, .0) anchor (-.985, -.54) rotate 10
    ease 3.0 pos (-.048, .015) rotate -10
    ease 1.0 pos (.0, .0) rotate 10
    repeat
    
transform hide_with_alpha():
    on start:
        alpha 1.0
        ease_quad 3.0 alpha .0

image my_animation:
    contains:
        ConditionSwitch("body == 'white'", At("body white", default_instuctions),
                                   "body == 'black'", At("body black", default_instuctions))
           
    contains:
        ConditionSwitch("anim_state == 'dressed'", At("shirt", default_instuctions),
                                   "anim_state == 'stripping'", At("shirt", default_instuctions, hide_with_alpha),
                                   "anim_state == 'stripped'", Null())
        
label start:
    show my_animation
    "Normal animation..."
    
    $ anim_state = "stripping"
    "Zexy Strip Action!"
    
    $ anim_state = "stripped"
    $ body = "black"
    "All in the nude with a tan!"
Like what we're doing? Support us at:
Image

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#11 Post by johandark » Wed Jan 04, 2017 5:36 am

xela wrote:... you should try stuff yourself before asking questions...
I can promise you, I do my best... But programming is like trying to read Chinese... I can understand things, but other are just so alien...
xela wrote:just add another condition ("pl.dp >= 21 and pl.dp <= 25").

Code: Select all

pl.dp >= 22
pl.dp <= 21
pl.dp <= 17
The thing here, is I can HIDE the 22 points, just only if it´s equal or major than 22. If it´s equal or minor than 21... but then... 17 and 21 appears at same time...

I´ve tried to find a way to say... you just appear between this number and this other number...

I was unable to find that answer in docs, internet or forums... But if it´s so complicated, I will ask again in a new thread, since this is in theory another different doubt beyond this thread... and I understand.


--------------

When I only add "rotate" with Transform:

Code: Select all

ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", rotate=0),
It works.

When I add any other like alpha or xanchor, it just crashes.

Code: Select all

ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", rotate=0 alpha=1),
I was not able to find any way to solve that in DOCS... anyway I don´t really understand what the hell means "**kwargs" I thought it was "arguments" but then k and w... I´m sorry to be so naive on programming :(
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#12 Post by xela » Wed Jan 04, 2017 5:55 am

johandark wrote:I´ve tried to find a way to say... you just appear between this number and this other number...
as in:

Code: Select all

"17 < pl.dp < 22"
? where it evals to True for 18, 19, 20 and 21?
johandark wrote:

Code: Select all

ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", rotate=0 alpha=1),

Code: Select all

ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", rotate=0, alpha=1))
should work.
Like what we're doing? Support us at:
Image

User avatar
Imperf3kt
Lemma-Class Veteran
Posts: 3636
Joined: Mon Dec 14, 2015 5:05 am
Location: Your monitor
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#13 Post by Imperf3kt » Wed Jan 04, 2017 6:58 am

Kwargs, as far as I understand, meank "KeyWordARGument"
Someone more experienced than myself, feel free to correct me if I am mistaken.
Warning: May contain trace amounts of gratuitous plot.
pro·gram·mer (noun) An organism capable of converting caffeine into code.

Current project: GGD Mentor
Free Android GUI - Updated occasionally
Twitter
Imperf3kt Blackjack - a WIP blackjack game for Android made using Ren'Py

User avatar
johandark
Veteran
Posts: 346
Joined: Sat Apr 30, 2016 11:04 am
Completed: Wild Guards, In Dreams
Projects: Pact with a witch
Deviantart: johandarkweb
Location: Barcelona
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#14 Post by johandark » Wed Jan 04, 2017 7:57 am

xela wrote:"17 < pl.dp < 22"
Perfect! That resolves one of my biggest doubts ever since I´m doing my game. xD
xela wrote:ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", rotate=0, alpha=1))
should work.
It works perfectly!... I just forgot to add a "," comma... :S... Hell... I hate these things on programming...

And I expect to be my last question on this thread...

Code: Select all

define dass_001_points_high = ("pl.dp >= 22") #Higher Points
    
define dass_001_points_med = ("17 < pl.dp < 22") #Medium Points

define dass_001_points_low = ("pl.dp <= 17") #Lowest Points

Code: Select all

ConditionSwitch([dass_001_points_high], Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", xanchor=0.1, yanchor=0.2, rotate=0, alpha=1.0),

Code: Select all

ConditionSwitch("pl.dp >= 22", Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", xanchor=0.1, yanchor=0.2, rotate=0, alpha=1.0),
Is it possible to use this "[dass_001_points_high]" to substitute the "pl.dp >= 22"?

This is the error message that appears:

Code: Select all

I'm sorry, but an uncaught exception occurred.

Compiling ATL code at game/charactersimages.rpy:3214
  File "renpy/common/000statements.rpy", line 385, in execute_pause
    renpy.pause()
TypeError: unhashable type: 'list'

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "lib/windows-i686/day04_a_morning04.rpyc", line 7111, in script
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\ast.py", line 1696, in execute
    self.call("execute")
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\ast.py", line 1714, in call
    return renpy.statements.call(method, parsed, *args, **kwargs)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\statements.py", line 144, in call
    return method(parsed, *args, **kwargs)
  File "renpy/common/000statements.rpy", line 385, in execute_pause
    renpy.pause()
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\exports.py", line 1267, in pause
    rv = renpy.ui.interact(mouse='pause', type='pause', roll_forward=roll_forward)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\ui.py", line 278, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 2496, in interact
    repeat, rv = self.interact_core(preloads=preloads, **kwargs)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 2764, in interact_core
    root_widget.visit_all(lambda i : i.per_interact())
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 464, in visit_all
    d.visit_all(callback)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\core.py", line 461, in visit_all
    for d in self.visit():
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\atl.py", line 533, in visit
    block = self.compile()
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\atl.py", line 451, in compile
    block = self.atl.compile(self.context)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\atl.py", line 624, in compile
    statements = [ i.compile(ctx) for i in self.statements ]
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\atl.py", line 827, in compile
    child = ctx.eval(expr)
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\atl.py", line 223, in eval
    return eval(expr, renpy.store.__dict__, self.context) #@UndefinedVariable
  File "<string>", line 3, in <module>
  File "D:\01_johandark_PC\2015\OtherProjects\RenpyHGameProjects\renpy-6.99.10-sdk\renpy\display\layout.py", line 1275, in ConditionSwitch
    if cond not in cond_cache:
TypeError: unhashable type: 'list'

Windows-8-6.2.9200
Ren'Py 6.99.11.1749
Pacto con una Bruja 00.04.03

Thanks for all!
Image

User avatar
xela
Lemma-Class Veteran
Posts: 2481
Joined: Sun Sep 18, 2011 10:13 am
Contact:

Re: ATL BLOCK animation is posible with CONDITIONAL?

#15 Post by xela » Wed Jan 04, 2017 9:05 am

Loose the square brackets...

Code: Select all

ConditionSwitch(dass_001_points_high, Transform("aftermorning04_bg_fittingroom_mast_dass_18_d_pantsloss_wet 02", xanchor=0.1, yanchor=0.2, rotate=0, alpha=1.0),
Like what we're doing? Support us at:
Image

Post Reply

Who is online

Users browsing this forum: Bing [Bot], Google [Bot], minyan