- Home /
Saving a c# script in a javascript variable(unityscript)
Hey, i am modifying the inventory system made by brackeys. https://www.assetstore.unity3d.com/en/#!/content/10384
Now i want to define a c# script into a variable inside the character.js file. It looks like this:
var keyScript = Clone.GetComponent.<Key>();
It gives me an error, i really don't have a idea what it means. Quack?
Assets/Inventory/Scripts/Character.js(180,52): BCE0138: 'quack' is not a generic definition.
My key script is in the standard assets folder. This prevented some errors
EDIT:
I had to use:
var keyScript = Clone.GetComponent(Key);
This fixed my problem.
Answer by jzq740176597 · Feb 28, 2016 at 02:24 PM
The "quack" is due to the nature of the error. Javascript, by default, uses Duck Typing, which is often summarised as "if it quacks like a duck, it's a duck".
By using generics, you're enforcing hard types, rather than allowing duck typing to work properly. Since those types don't match, the duck typing in the compiler can't unify the two types (it can't determine how to make the object "quack"), so it throws an error.
Your answer
Follow this Question
Related Questions
Visual studio auto- complete when used with unity 1 Answer
How to access Vuforia C# library from Javascript 2 Answers
Manual Compilation of UnityScript / JavaScript 0 Answers
Simple car script not work on unity 5? 1 Answer
Can I use Javascript (Unityscript) for Box2D for Unity or Farseer Physics? 1 Answer