How to sync a variable through Photon PUN
I need to sync a variable so all the players have the same value.
I have tried with something like this
[PunRPC]
void Setting ()
{
I = somevalue;
//I Is my int
}
And I call it the following way:
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All);
But the int value is null.
What am I doing wrong?
c# unity3d photon
add a comment |
I need to sync a variable so all the players have the same value.
I have tried with something like this
[PunRPC]
void Setting ()
{
I = somevalue;
//I Is my int
}
And I call it the following way:
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All);
But the int value is null.
What am I doing wrong?
c# unity3d photon
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
Sorry I don't know how Photon works at all but in UNet you would have done something like[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and callingRpcSetting(myInt);
on the Server) wheremyInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.
– derHugo
Nov 22 '18 at 20:14
add a comment |
I need to sync a variable so all the players have the same value.
I have tried with something like this
[PunRPC]
void Setting ()
{
I = somevalue;
//I Is my int
}
And I call it the following way:
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All);
But the int value is null.
What am I doing wrong?
c# unity3d photon
I need to sync a variable so all the players have the same value.
I have tried with something like this
[PunRPC]
void Setting ()
{
I = somevalue;
//I Is my int
}
And I call it the following way:
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All);
But the int value is null.
What am I doing wrong?
c# unity3d photon
c# unity3d photon
asked Nov 22 '18 at 12:26
Gerardo MartinezGerardo Martinez
12
12
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
Sorry I don't know how Photon works at all but in UNet you would have done something like[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and callingRpcSetting(myInt);
on the Server) wheremyInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.
– derHugo
Nov 22 '18 at 20:14
add a comment |
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
Sorry I don't know how Photon works at all but in UNet you would have done something like[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and callingRpcSetting(myInt);
on the Server) wheremyInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.
– derHugo
Nov 22 '18 at 20:14
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
Sorry I don't know how Photon works at all but in UNet you would have done something like
[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and calling RpcSetting(myInt);
on the Server) where myInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.– derHugo
Nov 22 '18 at 20:14
Sorry I don't know how Photon works at all but in UNet you would have done something like
[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and calling RpcSetting(myInt);
on the Server) where myInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.– derHugo
Nov 22 '18 at 20:14
add a comment |
1 Answer
1
active
oldest
votes
You must pass parameter on function to all client can get this parameter. Just change your code to:
[PunRPC]
void Setting (int someValue)
{
I = somevalue;
}
void CallSetting()
{
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All, someValue);
}
You can pass PhotonMessageInfo additional on Setting fucntion to know more information of this client take setting call.
[PunRPC]
void Setting (int someValue, PhotonMessageInfo info)
{
}
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53430999%2fhow-to-sync-a-variable-through-photon-pun%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You must pass parameter on function to all client can get this parameter. Just change your code to:
[PunRPC]
void Setting (int someValue)
{
I = somevalue;
}
void CallSetting()
{
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All, someValue);
}
You can pass PhotonMessageInfo additional on Setting fucntion to know more information of this client take setting call.
[PunRPC]
void Setting (int someValue, PhotonMessageInfo info)
{
}
add a comment |
You must pass parameter on function to all client can get this parameter. Just change your code to:
[PunRPC]
void Setting (int someValue)
{
I = somevalue;
}
void CallSetting()
{
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All, someValue);
}
You can pass PhotonMessageInfo additional on Setting fucntion to know more information of this client take setting call.
[PunRPC]
void Setting (int someValue, PhotonMessageInfo info)
{
}
add a comment |
You must pass parameter on function to all client can get this parameter. Just change your code to:
[PunRPC]
void Setting (int someValue)
{
I = somevalue;
}
void CallSetting()
{
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All, someValue);
}
You can pass PhotonMessageInfo additional on Setting fucntion to know more information of this client take setting call.
[PunRPC]
void Setting (int someValue, PhotonMessageInfo info)
{
}
You must pass parameter on function to all client can get this parameter. Just change your code to:
[PunRPC]
void Setting (int someValue)
{
I = somevalue;
}
void CallSetting()
{
PhotonView PV = GetComponent<PhotonView>();
PV.RPC("Setting", RPCTargets.All, someValue);
}
You can pass PhotonMessageInfo additional on Setting fucntion to know more information of this client take setting call.
[PunRPC]
void Setting (int someValue, PhotonMessageInfo info)
{
}
answered Nov 24 '18 at 8:20
Trung BuiTrung Bui
913
913
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53430999%2fhow-to-sync-a-variable-through-photon-pun%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Did you try to pass it on as parameter instead?
– derHugo
Nov 22 '18 at 17:43
@derHugo Do you mean putting an int parameter in Setting and writing I as the parameter to use?
– Gerardo Martinez
Nov 22 '18 at 19:29
Sorry I don't know how Photon works at all but in UNet you would have done something like
[ClientRpc] public void RpcSetting(int value){ myInt = value}
(and callingRpcSetting(myInt);
on the Server) wheremyInt
is the variable you want to set on all clients. I guess it is somehow similar in photon.– derHugo
Nov 22 '18 at 20:14