2015-09-07 3 views
0

Ok je sais que je suis si nouveau pour coder son aliéné mais j'ai fait quelques progrès dans mes livres avec mon petit jeu .. il m'a fallu un mois pour comprendre comment déplacer un personnage en utilisant Clé de la flèche mais je l'ai fait néanmoins .. Donc maintenant je suis vraiment coincé comment puis-je faire changer la couleur de mon joueur (pendant 3 secondes) lorsqu'il est frappé à partir d'un objet d'en haut. Son objet 2D Csharp unity ... tombe de l'axe Y et mon joueur est l'axe X ... parce que je peux le faire ... puis au fil du temps je peux appliquer une animation sur le lecteur quand un objet le touche .comment faire changer la couleur du joueur lorsqu'il est frappé par un objet ... le tout dans un jeu 2D utilisant Csharp. L'objet est en train de tomber de l'axe des Y

+1

Montrez votre code. – Reins

+0

en utilisant UnityEngine; en utilisant System.Collections; leafeffects public class: MonoBehaviour { \t \t \t \t \t \t vide OnCollisionEnter (Collision col) \t \t { \t \t \t if (col.gameObject.name == "feuille") \t \t \t { \t \t \t ChangeGameObject (Colo r.blue); \t \t \t autre; \t \t \t \t GameObject.bucket (Couleur.white); \t \t}} \t } – Titanseed

+0

qui était mon code, je suis en train de faire ... – Titanseed

Répondre

0

Voici un script que j'ai rapidement préparé pour vous. Vous devriez faire plus de recherches, lire des tutoriels et regarder plus de tutoriels.

http://docs.unity3d.com/ScriptReference/Collider2D.OnCollisionEnter2D.html http://docs.unity3d.com/ScriptReference/Color.Lerp.html

using UnityEngine; 
using System.Collections; 

public class changeColorOnHit : MonoBehaviour { 
    SpriteRenderer sr; 
    void Start(){ 
     sr = GetComponent<SpriteRenderer>(); 
    } 

    void OnCollisionEnter2D(Collision2D collision){//whenever we hit something 
     sr.color = new Color(2,0,0);//set this object's red color to 200 percent 
    } 

    void Update(){ 
     //linear interpolation brings two values closer together proportional to a given third value(time) 
     sr.color = Color.Lerp (sr.color,Color.white,Time.deltaTime/1.5f);//slowly linear interpolate. takes about 3 seconds to return to white 
    } 
} 
+0

Merci beaucoup .. Je fais du mieux que je peux ... travailler 2 emplois et j'essaie de regarder et de lire des livres. Je pense que j'ai mis 44 heures de tutoriels youtube haha ​​.. – Titanseed

+0

c'est bon. certains disent que la pratique rend parfait –