本文整理汇总了C#中System.Data.SQLite.SQLiteDataReader.GetStream方法的典型用法代码示例。如果您正苦于以下问题:C# SQLiteDataReader.GetStream方法的具体用法?C# SQLiteDataReader.GetStream怎么用?C# SQLiteDataReader.GetStream使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.SQLite.SQLiteDataReader
的用法示例。
在下文中一共展示了SQLiteDataReader.GetStream方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: createMount
private static Mount createMount(SQLiteDataReader reader)
{
if (!reader.Read()) {
return null;
}
Mount mount = new Mount();
mount.permanent = true;
mount.id = reader.GetInt32(0);
mount.title = reader.GetString(1);
mount.name = reader.GetString(2);
int tameitem = reader.IsDBNull(3) ? DATABASE_NULL : reader.GetInt32(3);
if (tameitem > 0) mount.tameitemid = tameitem;
else mount.tameitemid = -1;
int tamecreature = reader.IsDBNull(4) ? DATABASE_NULL : reader.GetInt32(4);
if (tamecreature > 0) mount.tamecreatureid = tamecreature;
else mount.tamecreatureid = -1;
mount.speed = reader.GetInt32(5);
mount.tibiastore = reader.GetBoolean(6);
mount.image = Image.FromStream(reader.GetStream(7));
return mount;
}
示例2: createNPC
private static NPC createNPC(SQLiteDataReader reader)
{
SQLiteCommand command;
if (!reader.Read()) {
return null;
}
NPC npc = new NPC();
npc.permanent = true;
npc.id = reader.GetInt32(0);
npc.name = reader["name"].ToString();
npc.city = reader["city"].ToString();
if (!reader.IsDBNull(3) && !reader.IsDBNull(4) && !reader.IsDBNull(5)) {
npc.pos.x = reader.GetInt32(3);
npc.pos.y = reader.GetInt32(4);
npc.pos.z = reader.GetInt32(5);
}
npc.image = Image.FromStream(reader.GetStream(6));
npc.job = reader.IsDBNull(7) ? "" : reader.GetString(7);
if (npc.image.RawFormat.Guid == ImageFormat.Gif.Guid) {
int frames = npc.image.GetFrameCount(FrameDimension.Time);
if (frames == 1) {
Bitmap new_bitmap = new Bitmap(npc.image);
new_bitmap.MakeTransparent();
npc.image.Dispose();
npc.image = new_bitmap;
}
}
// special case for rashid: change location based on day of the week
if (npc != null && npc.name == "Rashid") {
command = new SQLiteCommand(String.Format("SELECT city, x, y, z FROM RashidPositions WHERE day='{0}'", DateTime.Now.DayOfWeek.ToString()), mainForm.conn);
reader = command.ExecuteReader();
if (reader.Read()) {
npc.city = reader["city"].ToString();
npc.pos.x = reader.GetInt32(1);
npc.pos.y = reader.GetInt32(2);
npc.pos.z = reader.GetInt32(3);
}
}
command = new SQLiteCommand(String.Format("SELECT itemid, value FROM SellItems WHERE vendorid={0}", npc.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemSold sellItem = new ItemSold();
sellItem.itemid = reader.GetInt32(0);
sellItem.npcid = npc.id;
sellItem.price = reader.GetInt32(1);
npc.sellItems.Add(sellItem);
}
command = new SQLiteCommand(String.Format("SELECT itemid, value FROM BuyItems WHERE vendorid={0}", npc.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemSold buyItem = new ItemSold();
buyItem.itemid = reader.GetInt32(0);
buyItem.npcid = npc.id;
buyItem.price = reader.GetInt32(1);
npc.buyItems.Add(buyItem);
}
command = new SQLiteCommand(String.Format("SELECT spellid,knight,druid,paladin,sorcerer FROM SpellNPCs WHERE npcid={0}", npc.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
SpellTaught t = new SpellTaught();
t.npcid = npc.id;
t.spellid = reader.GetInt32(0);
t.knight = reader.GetBoolean(1);
t.druid = reader.GetBoolean(2);
t.paladin = reader.GetBoolean(3);
t.sorcerer = reader.GetBoolean(4);
npc.spellsTaught.Add(t);
}
command = new SQLiteCommand(String.Format("SELECT DISTINCT questid FROM QuestNPCs WHERE npcid={0}", npc.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
Quest q = getQuest(reader.GetInt32(0));
npc.involvedQuests.Add(q);
}
command = new SQLiteCommand(String.Format("SELECT destination,cost,notes FROM NPCDestinations WHERE npcid={0}", npc.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
Transport t = new Transport();
t.destination = reader.GetString(0);
t.cost = reader.GetInt32(1);
t.notes = reader.GetString(2);
npc.transportOffered.Add(t);
}
return npc;
}
示例3: createItem
private static Item createItem(SQLiteDataReader reader)
{
SQLiteCommand command;
if (!reader.Read()) {
return null;
}
Item item = new Item();
item.permanent = true;
item.id = reader.GetInt32(0);
item.displayname = reader.GetString(1);
item.actual_value = reader.IsDBNull(2) ? DATABASE_NULL : reader.GetInt64(2);
item.vendor_value = reader.IsDBNull(3) ? DATABASE_NULL : reader.GetInt64(3);
item.stackable = reader.GetBoolean(4);
item.capacity = reader.IsDBNull(5) ? DATABASE_NULL : reader.GetFloat(5);
item.category = reader.IsDBNull(6) ? "Unknown" : reader.GetString(6);
item.discard = reader.GetBoolean(7);
item.convert_to_gold = reader.GetBoolean(8);
item.look_text = reader.IsDBNull(9) ? String.Format("You see a {0}.", item.displayname) : reader.GetString(9);
item.title = reader.GetString(10);
item.currency = reader.IsDBNull(11) ? DATABASE_NULL : reader.GetInt32(11);
item.image = Image.FromStream(reader.GetStream(12));
if (item.image.RawFormat.Guid == ImageFormat.Gif.Guid) {
int frames = item.image.GetFrameCount(FrameDimension.Time);
if (frames == 1) {
Bitmap new_bitmap = new Bitmap(item.image);
new_bitmap.MakeTransparent();
item.image.Dispose();
item.image = new_bitmap;
}
}
command = new SQLiteCommand(String.Format("SELECT vendorid, value FROM SellItems WHERE itemid={0}", item.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemSold sellItem = new ItemSold();
sellItem.itemid = item.id;
sellItem.npcid = reader.GetInt32(0);
sellItem.price = reader.GetInt32(1);
item.sellItems.Add(sellItem);
}
command = new SQLiteCommand(String.Format("SELECT vendorid, value FROM BuyItems WHERE itemid={0}", item.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemSold buyItem = new ItemSold();
buyItem.itemid = item.id;
buyItem.npcid = reader.GetInt32(0);
buyItem.price = reader.GetInt32(1);
item.buyItems.Add(buyItem);
}
command = new SQLiteCommand(String.Format("SELECT creatureid, percentage, min, max FROM CreatureDrops WHERE itemid={0}", item.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemDrop itemDrop = new ItemDrop();
itemDrop.itemid = item.id;
itemDrop.creatureid = reader.GetInt32(0);
itemDrop.percentage = reader.IsDBNull(1) ? DATABASE_NULL : reader.GetFloat(1);
if (itemDrop.percentage > 100) {
itemDrop.min = 1;
itemDrop.max = (int)(itemDrop.percentage / 100.0 * 2.0);
itemDrop.percentage = 100;
} else {
itemDrop.min = Math.Max(reader.GetInt32(2), 1);
itemDrop.max = Math.Max(reader.GetInt32(3), itemDrop.min);
}
item.itemdrops.Add(itemDrop);
}
command = new SQLiteCommand(String.Format("SELECT questid FROM QuestRewards WHERE itemid={0}", item.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
item.rewardedBy.Add(getQuest(reader.GetInt32(0)));
}
command = new SQLiteCommand(String.Format("SELECT property, value FROM ItemProperties WHERE itemid={0}", item.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
string property = reader.GetString(0);
switch(property) {
case "Voc":
item.vocation = reader.GetString(1);
break;
case "Level":
item.level = reader.GetInt32(1);
break;
case "Def":
item.defensestr = reader["value"].ToString();
if (!int.TryParse(item.defensestr, out item.defense)) {
item.defense = int.Parse(item.defensestr.Split(' ')[0]);
}
break;
case "Attrib":
item.attrib = reader.GetString(1);
break;
case "Atk":
item.attack = reader.GetInt32(1);
break;
case "Atk+":
item.atkmod = reader.GetInt32(1);
break;
//.........这里部分代码省略.........
示例4: createCreature
private static Creature createCreature(SQLiteDataReader reader)
{
SQLiteCommand command;
if (!reader.Read()) {
return null;
}
Creature cr = new Creature();
cr.permanent = true;
cr.id = reader.GetInt32(0);
cr.displayname = reader["name"].ToString();
cr.health = reader.IsDBNull(2) ? DATABASE_NULL : reader.GetInt32(2);
cr.experience = reader.IsDBNull(3) ? DATABASE_NULL : reader.GetInt32(3);
cr.maxdamage = reader.IsDBNull(4) ? DATABASE_NULL : reader.GetInt32(4);
cr.summoncost = reader.IsDBNull(5) ? DATABASE_NULL : reader.GetInt32(5);
cr.illusionable = reader.GetBoolean(6);
cr.pushable = reader.GetBoolean(7);
cr.pushes = reader.GetBoolean(8);
cr.res_phys = reader.IsDBNull(9) ? 100 : reader.GetInt32(9);
cr.res_holy = reader.IsDBNull(10) ? 100 : reader.GetInt32(10);
cr.res_death = reader.IsDBNull(11) ? 100 : reader.GetInt32(11);
cr.res_fire = reader.IsDBNull(12) ? 100 : reader.GetInt32(12);
cr.res_energy = reader.IsDBNull(13) ? 100 : reader.GetInt32(13);
cr.res_ice = reader.IsDBNull(14) ? 100 : reader.GetInt32(14);
cr.res_earth = reader.IsDBNull(15) ? 100 : reader.GetInt32(15);
cr.res_drown = reader.IsDBNull(16) ? 100 : reader.GetInt32(16);
cr.res_lifedrain = reader.IsDBNull(17) ? 100 : reader.GetInt32(17);
cr.paralysable = reader.GetBoolean(18);
cr.senseinvis = reader.GetBoolean(19);
cr.abilities = reader.IsDBNull(20) ? DATABASE_STRING_NULL : reader["abilities"].ToString();
cr.title = reader[21].ToString();
cr.speed = reader.IsDBNull(22) ? DATABASE_NULL : reader.GetInt32(22);
cr.armor = reader.IsDBNull(23) ? DATABASE_NULL : reader.GetInt32(23);
cr.boss = reader.GetInt32(24) > 0;
if (reader.IsDBNull(25)) {
return null;
}
cr.image = Image.FromStream(reader.GetStream(25));
command = new SQLiteCommand(String.Format("SELECT skinitemid, knifeitemid, percentage FROM Skins WHERE creatureid={0}", cr.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
Skin skin = new Skin();
skin.dropitemid = reader.GetInt32(0);
skin.skinitemid = reader.GetInt32(1);
skin.percentage = reader.IsDBNull(2) ? DATABASE_NULL : reader.GetFloat(2);
cr.skin = skin;
}
command = new SQLiteCommand(String.Format("SELECT itemid, percentage, min, max FROM CreatureDrops WHERE creatureid={0}", cr.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
ItemDrop itemDrop = new ItemDrop();
itemDrop.creatureid = cr.id;
itemDrop.itemid = reader.GetInt32(0);
itemDrop.percentage = reader.IsDBNull(1) ? DATABASE_NULL : reader.GetFloat(1);
if (itemDrop.percentage > 100) {
itemDrop.min = 1;
itemDrop.max = (int)(itemDrop.percentage / 100.0 * 2.0);
itemDrop.percentage = 100;
} else {
itemDrop.min = Math.Max(reader.GetInt32(2), 1);
itemDrop.max = Math.Max(reader.GetInt32(3), itemDrop.min);
}
cr.itemdrops.Add(itemDrop);
}
return cr;
}
示例5: createWorldObject
private static WorldObject createWorldObject(SQLiteDataReader reader)
{
if (!reader.Read()) {
return null;
}
WorldObject o = new WorldObject();
o.title = reader.GetString(0);
o.name = reader.GetString(1);
o.image = Image.FromStream(reader.GetStream(2)); ;
return o;
}
示例6: createSpell
private static Spell createSpell(SQLiteDataReader reader)
{
SQLiteCommand command;
if (!reader.Read()) {
return null;
}
Spell spell = new Spell();
spell.permanent = true;
spell.id = reader.GetInt32(0);
spell.name = reader["name"].ToString();
spell.words = reader["words"].ToString();
spell.element = reader.IsDBNull(3) ? "Unknown" : reader.GetString(3);
spell.cooldown = reader.IsDBNull(4) ? DATABASE_NULL : reader.GetInt32(4);
spell.premium = reader.GetBoolean(5);
spell.promotion = reader.GetBoolean(6);
spell.levelrequired = reader.GetInt32(7);
spell.goldcost = reader.GetInt32(8);
spell.manacost = reader.GetInt32(9);
spell.knight = reader.GetBoolean(10);
spell.paladin = reader.GetBoolean(11);
spell.sorcerer = reader.GetBoolean(12);
spell.druid = reader.GetBoolean(13);
spell.image = Image.FromStream(reader.GetStream(14));
command = new SQLiteCommand(String.Format("SELECT npcid, knight, druid, paladin, sorcerer FROM SpellNPCs WHERE spellid={0}", spell.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
SpellTaught t = new SpellTaught();
t.npcid = reader.GetInt32(0);
t.spellid = spell.id;
t.knight = reader.GetBoolean(1);
t.druid = reader.GetBoolean(2);
t.paladin = reader.GetBoolean(3);
t.sorcerer = reader.GetBoolean(4);
spell.teachNPCs.Add(t);
}
return spell;
}
示例7: createOutfit
private static Outfit createOutfit(SQLiteDataReader reader)
{
SQLiteCommand command;
if (!reader.Read()) {
return null;
}
Outfit outfit = new Outfit();
outfit.permanent = true;
outfit.id = reader.GetInt32(0);
outfit.title = reader.GetString(1);
outfit.name = reader.GetString(2);
outfit.premium = reader.GetBoolean(3);
outfit.tibiastore = reader.GetBoolean(4);
// Outfit Images
command = new SQLiteCommand(String.Format("SELECT male, addon, image FROM OutfitImages WHERE outfitid={0}", outfit.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
bool male = reader.GetBoolean(0);
int addon = reader.GetInt32(1);
Image image = Image.FromStream(reader.GetStream(2));
if (male) {
outfit.maleImages[addon] = image;
} else {
outfit.femaleImages[addon] = image;
}
}
command = new SQLiteCommand(String.Format("SELECT questid FROM QuestOutfits WHERE outfitid={0}", outfit.id), mainForm.conn);
reader = command.ExecuteReader();
while (reader.Read()) {
outfit.questid = reader.GetInt32(0);
}
return outfit;
}