Exemple #1
0
    //x, y, damage, duration, size, damageType
    ShapeJson AddShape(double x, double y, double damage, double duration, double size, string damageType, string type)
    {
        ShapeJson shapeJson = new ShapeJson();
        Vector2   spellPos  = new Vector2((float)x, (float)y);

        if (spellPos.magnitude > maxDistance)
        {
            spellPos = spellPos.normalized * maxDistance;
        }
        shapeJson.posX          = spellPos.x;
        shapeJson.posY          = spellPos.y;
        shapeJson.damage        = damage < maxDamage? (float)damage : maxDamage;
        shapeJson.size          = size < maxSize? (float)size : maxSize;
        shapeJson.duration      = duration < maxDuration? (float)duration : maxDuration;
        shapeJson.elementalType = damageType;
        //get an equation that will give us the manacost in function of the damage, position, size and duration
        shapeJson.manaCost = distanceWeight * (spellPos.magnitude / maxDistance) +
                             durationWeight * (shapeJson.duration / maxDuration) +
                             sizeWeight * (shapeJson.size / maxSize) +
                             damageWeight * (shapeJson.damage / maxDamage);
        shapeJson.type = type;
        return(shapeJson);
    }
Exemple #2
0
 public void AddShape(ShapeJson p)
 {
     shapes.Add(p);
 }