Example #1
0
    private void Awake()
    {
        //always replace instance bc we know
        //there will only be one instance active at a time
        instance = this;

        Debug.Assert(armory != null);
        armory.Define();

        audioSource = GetComponent <AudioSource>();
        rb          = GetComponent <Rigidbody2D>();
        hitbox      = GetComponent <Collider2D>();
        anim        = GetComponent <Animator>();
        torsoRend   = transform.Find("Torso").GetComponent <SpriteRenderer>();
        legsRend    = transform.Find("Legs").GetComponent <SpriteRenderer>();
        ammoRend    = transform.Find("AmmoCount").GetComponent <SpriteRenderer>();

        weaponTrans = transform.Find("Weapon");
        weaponAnim  = weaponTrans.GetComponent <Animator>();
        weaponRend  = weaponTrans.GetComponent <SpriteRenderer>();

        //anim
        weaponAnimOverCont =
            new AnimatorOverrideController(weaponAnim.runtimeAnimatorController);
        weaponAnim.runtimeAnimatorController = weaponAnimOverCont;
        weaponAnimOverrides =
            new AnimationClipOverrides(weaponAnimOverCont.overridesCount);
        weaponAnimOverCont.GetOverrides(weaponAnimOverrides);
    }
Example #2
0
        public void ErzeugeKriegerBogenTest()
        {
            var krieger = new Krieger(1, 1, 1, Gesinnung.Rechtschaffen);

            using var kriegerPdf = PdfCreator.ErzeugeKriegerBogen(krieger);

            using var f = File.Create("krieger_test.pdf");
            kriegerPdf.CopyTo(f);
            f.Flush();
        }
Example #3
0
        private static void FillKrieger(Krieger krieger, PdfAcroForm form)
        {
            var fields = form.Fields;

            FillBase(fields, krieger);

            fields["Klasse"].Value = new PdfString("Krieger");

            fields["KritBereichFäh"].Value = new PdfString(krieger.KritBereich);
            fields["KritWürfelFäh"].Value  = new PdfString(krieger.KritWürfel);
            fields["PersWaffe"].Value      = new PdfString();
        }
Example #4
0
    private void Start()
    {
        krieger = Krieger.instance;

        musicSource.volume    = musicVolume;
        ambienceSource.volume = soundFXVolume;

        ambienceIndex = Random.Range(0, ambience.Length);

        int musicSelection = Random.Range(0, music.Length);

        musicSource.PlayOneShot(music[musicSelection]);
    }
Example #5
0
    private void Awake()
    {
        //always replace instance bc we know
        //there will only be one instance active at a time
        instance = this;

        Debug.Assert(ui != null);
        Debug.Assert(heresy != null);

        heresy.Define();

        player = GameObject.FindWithTag("Player").GetComponent <Krieger>();
    }
Example #6
0
        public static MemoryStream ErzeugeKriegerBogen(Krieger krieger)
        {
            var assembly = typeof(PdfCreator).Assembly;

            using var kriegerBogen = assembly.GetManifestResourceStream("DccCharCreator.pdf.Resources.DCC_Krieger_ausfüllbar.pdf");
            using var pdf          = PdfReader.Open(kriegerBogen);
            SetNeedAppearances(pdf);

            FillKrieger(krieger, pdf.AcroForm);

            var stream = new MemoryStream();

            pdf.Save(stream, false);
            pdf.Dispose();
            return(stream);
        }
        public IActionResult Pdf(int seed, int character, Klasse klasse, int stufe, Gesinnung gesinnung)
        {
            MemoryStream ms = null;

            switch (klasse)
            {
            case Klasse.Dieb:
                var dieb = new Dieb(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeDiebBogen(dieb);
                break;

            case Klasse.Elf:
                var elf = new Elf(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeElfBogen(elf);
                break;

            case Klasse.Halbling:
                var halbling = new Halbling(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeHalblingBogen(halbling);
                break;

            case Klasse.Kleriker:
                var kleriker = new Kleriker(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeKlerikerBogen(kleriker);
                break;

            case Klasse.Krieger:
                var krieger = new Krieger(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeKriegerBogen(krieger);
                break;

            case Klasse.Zauberkundiger:
                var zauberkundiger = new Zauberkundiger(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeZauberkundigerBogen(zauberkundiger);
                break;

            case Klasse.Zwerg:
                var zwerg = new Zwerg(seed, character, stufe, gesinnung);
                ms = PdfCreator.ErzeugeZwergBogen(zwerg);
                break;
            }
            ;

            return(File(ms, "application/pdf", $"Charakterbogen_{klasse}_{seed}_{character}.pdf"));
        }
Example #8
0
    private void Start()
    {
        // musicVolume.onValueChanged.AddListener(
        //     delegate
        //     {
        //         AudioManager.musicVolume = musicVolume.value;
        //         AudioManager.instance.musicSource.volume = AudioManager.musicVolume;
        //         PlayerPrefs.SetFloat("MusicVolume", AudioManager.musicVolume);
        //     });
        // musicVolume.value = PlayerPrefs.GetFloat("MusicVolume", 1f);

        // soundFXVolume.onValueChanged.AddListener(
        //     delegate
        //     {
        //         AudioManager.soundFXVolume = soundFXVolume.value;
        //         AudioManager.instance.ambienceSource.volume = AudioManager.soundFXVolume;
        //         PlayerPrefs.SetFloat("SoundFXVolume", AudioManager.soundFXVolume);
        //     });
        // soundFXVolume.value = PlayerPrefs.GetFloat("SoundFXVolume", 1f);

        //add click sounds
        Button[] buttons = Resources.FindObjectsOfTypeAll <Button>();
        foreach (Button b in buttons)
        {
            b.onClick.AddListener(() => AudioManager.PlayOneClip(AudioManager.instance.ambienceSource, clicks));
        }

        //weapon selection
        Button[] weaponButtons = weaponSelection.transform.Find("Names").GetComponentsInChildren <Button>();
        foreach (Button b in weaponButtons)
        {
            weaponNamesToButtons.Add(b.name, b);
            b.onClick.AddListener(() => SelectWeapon(b.gameObject.name));
        }

        //weapon stats
        Text[] weaponStatTexts = weaponStats.transform.GetComponentsInChildren <Text>();
        foreach (Text t in weaponStatTexts)
        {
            weaponStatToText.Add(t.name, t);
            Utils.AdjustTextScaleForCustomFont(t);
        }

        Utils.AdjustTextScaleForCustomFont(endGameText);

        krieger          = Krieger.instance;
        krieger.OnDeath += EndScreenSequenceWrapper;
        krieger.OnShoot += DisplayAmmoWrapper;

        //set to UI so that Fader doesn't affect it during weapon selection
        krieger.SetRendererLayer("UI");
        fader.color = new Color(0f, 0f, 0f, 210f / 255f);

        LockUnavailableWeaponsFromPlayerData();

        SelectWeapon(
            "Shovel",
            initialization: true);

        SelectWeapon(
            "Blaster",
            initialization: true);
    }