Mouvement par module Python suite

This commit is contained in:
Philippe Roy 2023-07-21 21:32:22 +02:00
parent 263b47d3ea
commit 8eb468e390
2 changed files with 21 additions and 30 deletions

Binary file not shown.

51
fop.py
View File

@ -51,13 +51,13 @@ def clavier(cont):
obj['chute']=0
if obj['courrir']<40: # 40 : nombre de pas pour courrir
obj.applyMovement((0,-pas_lineaire,0), True)
start, end, speed, = 1, 18, 2
start, end, speed, layer = 1, 18, 2, 0
obj_rig.playAction('Frankie-avancer', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
obj['courrir']+=1
else:
obj.applyMovement((0,-pas_courrir,0), True)
start, end, speed, = 1, 18, 2
obj_rig.playAction('Frankie-courrir', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
start, end, speed, layer = 1, 18, 2, 0
obj_rig.playAction('Frankie-courrir', start, end, layer, 1, 1.0, PLAY, 0.0, 0, speed)
if keyboard.inputs[bge.events.UPARROWKEY].status[0] != ACTIVATE and obj['courrir']>0:
obj['courrir']=0
@ -66,8 +66,8 @@ def clavier(cont):
idle=False
obj['chute']=0
obj.applyMovement((0,pas_lineaire,0), True)
start, end, speed, = 1, 20, 2
obj_rig.playAction('Frankie-reculer', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
start, end, speed, layer = 1, 20, 2, 0
obj_rig.playAction('Frankie-reculer', start, end, layer, 1, 1.0, PLAY, 0.0, 0, speed)
# Tourner gauche : Flèche gauche - Left arrow
if keyboard.inputs[bge.events.LEFTARROWKEY].status[0] == ACTIVATE:
@ -77,19 +77,9 @@ def clavier(cont):
obj.applyRotation((0, 0,pas_angulaire_fps), True)
else:
obj.applyRotation((0, 0,pas_angulaire), True)
start, end, speed, = 1, 12, 2
start, end, speed, layer = 1, 12, 2, 0
obj_rig.playAction('Frankie-gauche', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
# start = 1
# end = 100
# layer = 0
# priority = 1
# blendin = 1.0
# mode = bge.logic.KX_ACTION_MODE_PLAY
# layerWeight = 0.0
# ipoFlags = 0
# speed = scene.objects['Commands']['speed']*8
# Tourner droite : Flèche droit - Right arrow
if keyboard.inputs[bge.events.RIGHTARROWKEY].status[0] == ACTIVATE:
idle=False
@ -98,8 +88,8 @@ def clavier(cont):
obj.applyRotation((0, 0,-pas_angulaire_fps), True)
else:
obj.applyRotation((0, 0,-pas_angulaire), True)
start, end, speed, = 1, 12, 2
obj_rig.playAction('Frankie-droite', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
start, end, speed, layer = 1, 12, 2, 0
obj_rig.playAction('Frankie-droite', start, end, layer, 1, 1.0, PLAY, 0.0, 0, speed)
# Saut
# obj['dist_terrain']= obj.getDistanceTo(scene.objects['Terrain'])
@ -117,14 +107,15 @@ def clavier(cont):
# obj_rig.playAction('Frankie-sauter', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
objs_sol=('Terrain', 'Platforme', 'Pont 1', 'Pont 2')
for obj_sol in objs_sol:
# print (obj.collide(scene.objects[obj_sol]))
if obj.collide(scene.objects[obj_sol])[0]:
if len(obj.collide(scene.objects[obj_sol])[1])>0:
obj.applyForce((0, 0,force_saut), True)
start, end, speed, = 1, 34, 2
obj_rig.playAction('Frankie-sauter', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
start, end, speed, layer = 1, 34, 2, 1
obj_rig.playAction('Frankie-sauter', start, end, layer, 1, 1.0, PLAY, 0.0, 0, speed)
break
print (obj_rig.isPlayingAction(1))
# Chute
if obj.worldPosition.z == obj['chute_z']:
obj['chute']=0
@ -132,7 +123,7 @@ def clavier(cont):
obj['chute']+=1
objs_sol=('Terrain', 'Platforme', 'Pont 1', 'Pont 2')
for obj_sol in objs_sol:
print (obj.collide(scene.objects[obj_sol]))
# print (obj.collide(scene.objects[obj_sol]))
if obj.collide(scene.objects[obj_sol])[0]:
if len(obj.collide(scene.objects[obj_sol])[1])>0:
obj['chute']=0
@ -149,13 +140,13 @@ def clavier(cont):
obj['chute_z'] = obj.worldPosition.z
if obj['chute']>50:
idle=False
start, end, speed, = 1, 33, 2
obj_rig.playAction('Frankie-tomber', start, end, 0, 1, 1.0, LOOP, 0.0, 0, speed)
start, end, speed, layer = 1, 33, 2, 0
obj_rig.playAction('Frankie-tomber', start, end, layer, 1, 1.0, LOOP, 0.0, 0, speed)
# Attente
if idle:
start, end, speed, = 1, 268, 2
obj_rig.playAction('Frankie-attente', start, end, 0, 1, 1.0, LOOP, 0.0, 0, speed)
start, end, speed, layer = 1, 268, 2, 0
obj_rig.playAction('Frankie-attente', start, end, layer, 1, 1.0, LOOP, 0.0, 0, speed)
# Caméra FPS
if JUST_ACTIVATED in keyboard.inputs[bge.events.FKEY].queue:
@ -233,8 +224,8 @@ def init(cont):
scene.objects['Pancarte '+str(i)].setVisible(False,True)
# Mise en route de la plateforme
start, end, speed, = 1, 200, 0.5
scene.objects['Platforme'].playAction('Platforme-action', start, end, 0, 1, 1.0, LOOP, 0.0, 0, speed)
start, end, speed, layer = 1, 200, 0.5, 0
scene.objects['Platforme'].playAction('Platforme-action', start, end, layer, 1, 1.0, LOOP, 0.0, 0, speed)
# Chute
def chute(cont):
@ -263,8 +254,8 @@ def ressort(cont):
obj_ressort=scene.objects[obj.name[:-7]]
obj_frankie = scene.objects['Frankie']
if sensor.positive:
start, end, speed, = 1, 16, 0.5
obj_ressort.playAction(obj_ressort.name+'-action', start, end, 0, 1, 1.0, PLAY, 0.0, 0, speed)
start, end, speed, layer = 1, 16, 0.5, 0
obj_ressort.playAction(obj_ressort.name+'-action', start, end, layer, 1, 1.0, PLAY, 0.0, 0, speed)
obj_frankie.applyForce((0, 0,force_saut), True)