The Godot Q&A is currently undergoing maintenance!

Your ability to ask and answer questions is temporarily disabled. You can browse existing threads in read-only mode.

We are working on bringing this community platform back to its full functionality, stay tuned for updates. | Twitter

0 votes

Hey! basically i have a multiplayer game running and i can see the players move on either computers and i implemented this simple sprinting code in the code for walking but for some reason the player doesn't sprint on the other computer
here's the code:

sync func calculateVelocity(direction1) -> void:
    if Input.is_action_pressed("Shift"):
        speed = speed * 2
    velocity = direction1 * speed
in Engine by (120 points)

1 Answer

0 votes
Best answer

It is because Input.is_action_pressed("Shift") is only pressed in your computer.
Try this

func takeInputs():
    var speed_mul = 1
    #code to take input
    #get direction and all 
    if Input.is_action_pressed("Shift"):
        speed_mul = 2

    rpc("calculateVelocity",direction1, speed_mul)

sync func calculateVelocity(direction1, mul) -> void:
    velocity = direction1 * speed
by (753 points)
selected by

THANKS ! that worked perfectly

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.